Эволюционные алгоритмы многокритериальной оптимизации, основанные на индикаторах. Гиперобъем — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 1: Строка 1:
 
{{В разработке}}
 
{{В разработке}}
 +
 +
==Основные определения==
  
 
{{Определение
 
{{Определение
 
|definition=Задача многокритериальной оптимизации формулируется следующим образом:
 
|definition=Задача многокритериальной оптимизации формулируется следующим образом:
<tex>\mathrm{maximize f(x)=(f_1(x), f_2(x),\ldots,f_d(x))}</tex>, где <tex>\mathrm{f(x):X \rightarrow R^d}</tex> (<tex>d</tex> - количество критериев).
+
<tex>\mathrm{ maximize \{ f(x)=(f_1(x), f_2(x), \ldots ,f_d(x)) \} }</tex>, где <tex>\mathrm{ f(x):X \rightarrow R^d }</tex> (<tex>d</tex> - количество критериев).
 
}}
 
}}
  
Строка 10: Строка 12:
 
|definition=Множество <tex>X^* \subseteq X</tex> называется Парето оптимальным, если:
 
|definition=Множество <tex>X^* \subseteq X</tex> называется Парето оптимальным, если:
 
<tex>\mathrm{\forall x^* \subset X^* \not \exists x \subset X : x \succ x^*}</tex>,
 
<tex>\mathrm{\forall x^* \subset X^* \not \exists x \subset X : x \succ x^*}</tex>,
где <tex>\left(x \succ x^* \leftrightarrow \forall i \in 1 \ldots d: \left( f_i(x) \geq f_i(x^*)\right)\right) \bigwedge \left( \exists i \in 1 \ldots d: \left( f_i(x) \geq f_i(x^*)\right)\right) </tex>  
+
где <tex>\left( x \succ x^* \leftrightarrow \forall i \in 1 \ldots d: \left( f_i(x) \geq f_i(x^*) \right) \right) \bigwedge \left( \exists i \in 1 \ldots d: \left( f_i(x) \geq f_i(x^*)\right)\right)</tex>  
 +
}}
 +
 
 +
<tex>x \succ x^*</tex> читается, как "<tex>x</tex> доминирует <tex>x^*</tex>"
 +
 
 +
{{Определение
 +
|definition=Индикатором называется функция <tex>I:\Omega \times \Omega \rightarrow R</tex>, где <tex>\Omega</tex> - множество всех Парето оптимальных множеств.
 
}}
 
}}
  
Существует много различных индикаторов, с помощью которых численно оценивают качество множества решений. Но широко используется только один.
+
==Применение==
 +
В работе [3] предлагают с помощью индикатора <tex>I</tex> ввести следующую функцию приспособленности:
 +
<tex>F(x^1)= \sum \limits_{x^2 \in P \setminus \{ x^1 \}} -e^{-I(x^2,x^1)/k}</tex>, где <tex>P</tex> - популяция, <tex>k</tex> - некая константа, зависящая от текущей задачи. Данная функция приспособленности колличественно измеряет потери в качестве при удалении особи.
 +
 
 +
Для пересчета значений функции приспособленности, при удалении особи <tex>x^*</tex> из поколения, достаточно:
 +
 
 +
<tex>\forall x \in P \setminus \{x*\} :F(x) = F(x) + e^{-I(x^*,x)/k}</tex> 
 +
 
 +
==Индикатор гиперобъема==
 +
 
 +
Существует много различных индикаторов, с помощью которых численно оценивают качество решений. Но широко используется только один.
 
{{Определение
 
{{Определение
|definition=Индикатор называется эластичным по Паретто(Pareto-compliant), если для любых двух множест решения <tex>A</tex> и <tex>B</tex> значение индикатора для <tex>A</tex> больше значения для <tex>B</tex> тогда и только тогда, когда <tex>A</tex> доминирует <tex>B</tex>.  
+
|definition=Индикатор называется эластичным по Парето(Pareto-compliant), если для любых двух множеств решения <tex>A</tex> и <tex>B</tex> значение индикатора для <tex>A</tex> больше значения для <tex>B</tex> тогда и только тогда, когда <tex>A</tex> доминирует <tex>B</tex>.  
 
}}
 
}}
  
Строка 27: Строка 45:
 
  Пусть <tex>\mathrm{r = \left(0, 0, \ldots, 0 \right)}</tex> и <tex>d=2</tex>. Тогда гиперобъем - это площадь объединения прямоугольников(см. рис).
 
  Пусть <tex>\mathrm{r = \left(0, 0, \ldots, 0 \right)}</tex> и <tex>d=2</tex>. Тогда гиперобъем - это площадь объединения прямоугольников(см. рис).
 
  [[File:Chart.png]]
 
  [[File:Chart.png]]
 +
 +
== Источники ==
 +
# Joshua D. Knowles, Richard A. Watson, David W. [http://rain.ifmo.ru/~tsarev/teaching/ea-2012/lectures/3/multiobjectivization.pdf|Corne Reducing Local Optima in Single-Objective Problems by Multi-objectivization]
 +
# Tobias Friedrich, Christian Horoba, Frank Neumann [http://www.mpi-inf.mpg.de/~tfried/paper/2009GECCO.pdf|Multiplicative Approximations and the Hypervolume Indicator]
 +
# Eckart Zitzle, Simon Kunzli [ftp://ife.ee.ethz.ch/pub/people/zitzler/ZK2004a.pdf|Indicator-Based Selection in Multiobjective Search]

Версия 00:42, 18 июня 2012

Эта статья находится в разработке!

Основные определения

Определение:
Задача многокритериальной оптимизации формулируется следующим образом: [math]\mathrm{ maximize \{ f(x)=(f_1(x), f_2(x), \ldots ,f_d(x)) \} }[/math], где [math]\mathrm{ f(x):X \rightarrow R^d }[/math] ([math]d[/math] - количество критериев).


Надо заметить, что под термином [math]maximize[/math] мы понимаем оптимальность по Парето.

Определение:
Множество [math]X^* \subseteq X[/math] называется Парето оптимальным, если:

[math]\mathrm{\forall x^* \subset X^* \not \exists x \subset X : x \succ x^*}[/math],

где [math]\left( x \succ x^* \leftrightarrow \forall i \in 1 \ldots d: \left( f_i(x) \geq f_i(x^*) \right) \right) \bigwedge \left( \exists i \in 1 \ldots d: \left( f_i(x) \geq f_i(x^*)\right)\right)[/math]


[math]x \succ x^*[/math] читается, как "[math]x[/math] доминирует [math]x^*[/math]"


Определение:
Индикатором называется функция [math]I:\Omega \times \Omega \rightarrow R[/math], где [math]\Omega[/math] - множество всех Парето оптимальных множеств.


Применение

В работе [3] предлагают с помощью индикатора [math]I[/math] ввести следующую функцию приспособленности: [math]F(x^1)= \sum \limits_{x^2 \in P \setminus \{ x^1 \}} -e^{-I(x^2,x^1)/k}[/math], где [math]P[/math] - популяция, [math]k[/math] - некая константа, зависящая от текущей задачи. Данная функция приспособленности колличественно измеряет потери в качестве при удалении особи.

Для пересчета значений функции приспособленности, при удалении особи [math]x^*[/math] из поколения, достаточно:

[math]\forall x \in P \setminus \{x*\} :F(x) = F(x) + e^{-I(x^*,x)/k}[/math]

Индикатор гиперобъема

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

Определение:
Индикатор называется эластичным по Парето(Pareto-compliant), если для любых двух множеств решения [math]A[/math] и [math]B[/math] значение индикатора для [math]A[/math] больше значения для [math]B[/math] тогда и только тогда, когда [math]A[/math] доминирует [math]B[/math].


Дадим определение индикатора гиперобъема[math]\left(HYP\right)[/math].

Определение:
Пусть дано множество решения [math]\mathrm{X \in R^d}[/math]. Пусть также множество всех решений усечено некоторой точкой [math]\mathrm{r = \left(r_1, r_2, \ldots, r_d \right)}[/math]. Тогда: [math]\mathrm{HYP\left(X\right)=VOL\left( \bigcup\limits_{\left(x_1, x_2, \ldots, x_d \right) \in X} \left[ r_1, x_1\right] \times \left[ r_2, x_2\right] \times \cdots \times \left[ r_d, x_d\right] \right)}[/math], где через [math]VOL(X)[/math] обозначена мера множества [math]X[/math] по Лебегу.


Пример:

Пусть [math]\mathrm{r = \left(0, 0, \ldots, 0 \right)}[/math] и [math]d=2[/math]. Тогда гиперобъем - это площадь объединения прямоугольников(см. рис).
Chart.png

Источники

  1. Joshua D. Knowles, Richard A. Watson, David W. Reducing Local Optima in Single-Objective Problems by Multi-objectivization
  2. Tobias Friedrich, Christian Horoba, Frank Neumann Approximations and the Hypervolume Indicator
  3. Eckart Zitzle, Simon Kunzli Selection in Multiobjective Search