Многокритериальная оптимизация
Многокритериальная оптимизация, или программирование (англ. Multi-objective optimization)[1][2] — это процесс одновременной оптимизации двух или более конфликтующих целевых функций в заданной области определения.
Задачи многокритериальной оптимизации встречаются во многих областях науки, техники и экономики.
Определение
[править | править код]Задача многокритериальной оптимизации формулируется следующим образом:[3]
где это () целевых функций. Векторы решений относятся к непустой области определения .
Задача многокритериальной оптимизации состоит в поиске вектора целевых переменных, удовлетворяющего наложенным ограничениям и оптимизирующего векторную функцию, элементы которой соответствуют целевым функциям. Эти функции образуют математическое описание критерия удовлетворительности и, как правило, взаимно конфликтуют. Отсюда, «оптимизировать» означает найти такое решение, при котором значения целевых функций были бы приемлемыми для постановщика задачи.[4]
Эталонные точки
[править | править код]Для возможности оценки качества найденных решений обычно рассматривают такие точки в области значения целевой функции:
- идеальная точка ,
- утопическая точка ,
- надир .
В некоторых случаях эти точки могут быть решениями.
Идеальная точка определяется как вектор , каждая из координат которого имеет оптимальное значение соответствующей составляющей целевой функции:[5]
Точка надир определяется как вектор:
Утопическую точку вычисляют на основе идеальной:[6]
где , — единичный вектор.
Критерий Парето
[править | править код]Вектор решения называется оптимальным по Парето, если не существует такого, что для всех и для хотя бы одного . Множество оптимальных по Парето решений можно обозначить как . Целевой вектор является оптимальным по Парето, если соответствующий ему вектор из области определения также оптимален по Парето. Множество оптимальных по Парето целевых векторов можно обозначить как .
Множество оптимальных по Парето векторов является подмножеством оптимальных по Парето в слабом смысле векторов. Вектор является слабым оптимумом по Парето тогда, когда не существует вектора такого, что для всех .
Диапазон значений оптимальных по Парето решений в области допустимых значений дает полезную информацию об исследуемой задаче, если целевые функции ограничены областью определения. Нижние границы оптимального по Парето множества представлены в «идеальном целевом векторе» . Его компоненты получены путём минимализации каждой целевой функции в пределах области определения.
Множество оптимальных по Парето решений также называют Парето-фронтом (англ. Pareto-frontier).
Лексикографический порядок
[править | править код]Если одни целевые функции важнее других, критерий оптимальности можно определить по лексикографическому порядку.
Отношение лексикографического порядка между векторами и выполняется, если , где . То есть первая компонента вектора меньше компоненты вектора , а компоненты — уровни (если есть). Лексикографический порядок для случая действительных чисел является линейным.
Вектор является лексикографическим решением, если не существует вектора , такого, что .
Поскольку отношение лексикографического порядка является линейным, можно доказать, что вектор является лексикографическим решением, если для всех выполняется:
Основной особенностью решений по лексикографическому порядку является существование выбора между критериями. Лексикографическая упорядоченность требует ранжирования критериев в том смысле, что оптимизация по критерию возможна лишь тогда, когда был достигнут оптимум для предыдущих критериев. Это означает, что первый критерий имеет наибольший приоритет, и только в случае существования нескольких решений по этому критерию будет поиск решений по второму и остальным критериям.
Существование иерархии среди критериев позволяет решать лексикографические задачи последовательно, шаг за шагом минимизируя по каждому следующему критерию, и используя оптимальные значения предварительных критериев как ограничения.
Скаляризация
[править | править код]Скалярное ранжирование
[править | править код]Для получения оптимальных по Парето решений часто используют методы скаляризации. Поскольку целевая функция задачи многокритериальной оптимизации имеет векторные значения, её превращают в функцию со скалярным значением. Таким образом, задача многокритериальной оптимизации сводится к задаче оптимизации с одной скалярной целевой функцией. Функция скаляризации должна удовлетворять следующим условиям.
Пусть — функция скаляризации, что превращает векторную функцию в скалярную. Если сохраняет упорядоченность по Парето , то есть, если для произвольных выполняется:
тогда решение , что минимизирует до , является решением по Парето.[7] Если сохраняет отношение порядка в , то есть, если для произвольных выполняется:
тогда решение , что минимизирует до , является слабым по Парето. Если непрерывна на и единственная точка минимума на , тогда является решением по Парето.
Взвешенная сумма
[править | править код]Приведенная функция сохраняет упорядоченность по Парето для . Поэтому решения, минимизирующие до для произвольных , являются оптимальными по Парето. Однако не сохраняет упорядоченность по Парето для , а сохраняет лишь отношение , поэтому решения, минимизирующие на для , являются слабыми по Парето.[7]
Недостатком метода взвешенных сумм в случае выпуклого множества значений целевых функций является невозможность охватить все оптимальные по Парето точки из множества Парето-фронта. В задачах комбинаторной многокритериальной оптимизации множество целевых значений не является выпуклым, поэтому метод взвешенных сумм не подходит для скаляризации целевых функций для этих задач.
Функция скаляризации Чебышёва
[править | править код]Взвешенная функция скаляризации Чебышёва сохраняет отношения и поэтому минимум является слабым по Парето.[7]
Метод изменения ограничений (ε-ограничения)
[править | править код]По методу изменения ограничений одну из целевых функций оставляют в качестве целевой, а остальные превращают в ограничения. То есть пусть будет целевой, а остальные представим как ограничение неравенства:
- при условиях
Значения могут рассматриваться как допустимые уровни для .
Методы решения
[править | править код]Интерактивность
[править | править код]Часто решение задачи многокритериальной оптимизации происходит с участием эксперта — человека, который выбирает и принимает решения на основе информации, представленной системой поддержки принятия решений. Возможно участие группы из нескольких экспертов. В случае участия человека в поиске решения алгоритмы и методы называют интерактивными.[3]
Эволюционные методы
[править | править код]Упоминания о применении генетических алгоритмов для решения задачи многокритериальной оптимизации относятся к концу 1960-х[8].
Метод исследования пространства параметров
[править | править код]Метод основан на построении допустимого и Парето-оптимального множеств решений. Позволяет решать задачи проектирования, идентификации[9].
См. также
[править | править код]Примечания
[править | править код]- ↑ Steuer, R.E. Multiple Criteria Optimization: Theory, Computations, and Application (англ.). — New York: John Wiley & Sons, Inc, 1986. — ISBN 047188846X.
- ↑ Sawaragi, Y.; Nakayama, H. and Tanino, T. Theory of Multiobjective Optimization (vol. 176 of Mathematics in Science and Engineering) (англ.). — Orlando, FL: Academic Press Inc, 1985. — ISBN 0126203709.
- ↑ 1 2 Jürgen Branke, Kalyanmoy Deb, Kaisa Miettinen та Roman Slowinski. Multiobjective Optimization: Interactive and Evolutionary Approaches (Lecture Notes in Computer Science) (англ.). — Springer. — ISBN 3-540-88907-8.
- ↑ A. Osyzka. Multicriteria optimization for engineering design (неопр.) // Design Optimization. — Academic Press. — С. 193—227.
- ↑ (Ehrgott, c. 34)
- ↑ (Jürgen et al, с. XI)
- ↑ 1 2 3 Nakayama, Hirotaka; Yun, Yeboon; Yoon, Min. Sequential Approximate Multiobjective Optimization Using Computational Intelligence (Vector Optimization) (англ.). — Springer. — ISBN 978-3-540-88909-0.
- ↑ R. S. Rosenberg. Simulation of genetic populations with biochemical properties (англ.). — Ann Harbor: University of Michigan, 1967.
- ↑ Соболь И.М. Выбор оптимальных параметров в задачах со многими критериями. — М.: Дрофа, 2006. — 175 с. — ISBN 5-7107-7989-X.
Литература
[править | править код]- Кини Р.Л., Райфа Х. Принятие решений при многих критериях: предпочтения и замещения. — М.: Радио и связь, 1981. — 560 с.
- Лотов А. В., Поспелова И. И. Конспект лекций по теории и методам многокритериальной оптимизации. Учеб. пос. М., 2005. 127 с.
- Matthias Ehrgott. Multicriteria Optimization (неопр.). — Springer, 2005. — ISBN 3-540-21398-8.
- M. Ehrgott and X. Gandibleux. Approximative Solution Methods for Multiobjective Combinatorial Optimization (англ.) // TOP : journal. — Sociedad de Estadística e Investigación Operativa, 2004. — Vol. 12, no. 1. Архивировано 23 июля 2007 года.
Ресурсы интернета
[править | править код]- Трифонов А. Г. Многокритериальная оптимизация (рус.)
![]() | В другом языковом разделе есть более полная статья Multi-objective optimization (англ.). |