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

Материал из Викиконспекты
Перейти к: навигация, поиск
м (rollbackEdits.php mass rollback)
 
(не показано 17 промежуточных версий 5 участников)
Строка 1: Строка 1:
 +
В задачах [[Задача_многокритериальной_оптимизации._Multiobjectivization|многокритериальной оптимизации]] встает проблема сравнения множеств решений. Данную проблему обычно решают введением функции, которая сопоставляет множеству решений вещественное значение. Такие функции называются индикаторами.
 +
 +
= Применение =
 +
В работе <ref>[ftp://ife.ee.ethz.ch/pub/people/zitzler/ZK2004a.pdf Kunzli S., Zitzle E. — Indicator-Based Selection in Multiobjective Search]</ref> предлагают с помощью индикатора <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 = \{x_i\}</tex> — популяция, <tex>k</tex> — некая константа, зависящая от текущей задачи. Данная функция приспособленности колличественно измеряет потери в качестве поколения при удалении особи.
 +
 +
Для пересчета значений функции приспособленности при удалении особи <tex>x^*</tex> из поколения достаточно выполнения следующего условия:
 +
 +
<tex>\forall x \in P \setminus \{x*\} :F(x) = F(x) + e^{-I(x^*,x)/k}</tex>
 +
 +
В работе <ref>[http://www.mpi-inf.mpg.de/~tfried/paper/2008PPSN_IBEA.pdf Brockhoff D., Friedrich T., Neumann F. — Analyzing Hypervolume Indicator Based Algorithms]</ref> детально рассматривается применение [[#definition2|индикатора гиперобъема]] в эволюционных алгоритмах.
 +
 
= Основные определения =
 
= Основные определения =
  
Рассмотрим функции вида: <tex>f:[a,A] \rightarrow [b,B]</tex>, где <tex>f</tex> убывает и <tex>f(a)=B, f(A)=b</tex>.
+
== Гиперобъем ==
Множество всех таких функций обозначим через <tex>\mathbb{F}</tex>.
 
 
 
Введем несколько понятий.
 
== Аппроксимация функции ==
 
 
{{Определение
 
{{Определение
 
|id=definition1
 
|id=definition1
 
|about=1
 
|about=1
|definition=Множество решений <tex>\mathrm{X=\{x_1,x_2, \ldots , x_n\}}</tex> называется <tex>\alpha</tex>-аппроксимацией функции <tex>f \in \mathbb{F}</tex>, если
+
|definition=Индикатор называется оптимальным по Парето(Pareto-compliant), если для любых двух множеств решений <tex>A</tex> и <tex>B</tex> значение индикатора для <tex>A</tex> больше значения индикатора для <tex>B</tex> тогда и только тогда, когда <tex>A</tex> [[Задача_многокритериальной_оптимизации._Multiobjectivization#section=3|доминирует]] <tex>B</tex>.  
<tex>\mathrm{\forall x \in [a,A] \exists x_i \in X : (x \leq \alpha x_i) \bigwedge (f(x) \leq \alpha f(x_i))}</tex>.
 
 
}}
 
}}
Множество всех множеств решений обозначим через <tex>\mathbb{X}</tex>.
 
  
== Коэффициент аппроксимации ==
+
Дадим определение индикатора гиперобъема<ref>[http://www.mpi-inf.mpg.de/~tfried/paper/2010GECCO_Hyp.pdf Friedrich T., Bringmann K. — The Maximum Hypervolume Set Yields Near-optimal Approximatio]</ref><tex>\left(HYP\right)</tex>.
 
{{Определение
 
{{Определение
 
|id=definition2
 
|id=definition2
 
|about=2
 
|about=2
 +
|definition=Пусть дано множество решений <tex>\mathrm{X \subseteq \mathbb{R}^d}</tex>. Пусть также множество всех решений усечено некоторой точкой <tex>\mathrm{r = \left(r_1, r_2, \ldots, r_d \right)}</tex>. Тогда
 +
<tex>\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)}</tex>, где через <tex>VOL(X)</tex> обозначена мера множества <tex>X</tex> [[Мера_Лебега_в_R%5En|по Лебегу]].
 +
}}
 +
 +
 +
Например, пусть <tex>\mathrm{r = \left(r_1\right)}</tex> и <tex>d=1</tex>, тогда <tex>HYP(X) = \prod \limits_{x_i \in X} (x_i-r_1)</tex>.
 +
 +
Для задач двукритериальной оптимизацйии будем рассмотрим функции вида: <tex>f:[a,A] \rightarrow [b,B]</tex>, где <tex>f</tex> убывает и <tex>f(a)=B, f(A)=b</tex>.
 +
 +
Множество всех таких функций обозначим через <tex>\mathbb{F}</tex>. Множество всех множеств решений обозначим через <tex>\mathbb{X}</tex>.
 +
 +
{{Утверждение
 +
|id=statement1
 +
|about=1
 +
|statement=Пусть <tex>f \in \mathbb{F}, n \in \mathbb{N}</tex>, тогда существует, не обязательно единственное, множество решений <tex>X \in \mathbb{X}</tex>, которое максимизирует значение <tex>HYP(X)</tex> на <tex>\mathbb{X}</tex>.
 +
|proof=
 +
 +
<tex>X=\{x_1, x_2, \ldots,x_n\}</tex>
 +
 +
Пусть нижняя граница <tex>r=(R_x, R_y)</tex>.
 +
 +
<tex>HYP(X)=\sum\limits_{i = 1}^{n} (x_i-x_{i-1})(f(x_i) - r)</tex>, где <tex>x_0 = R_x</tex>.
 +
 +
Рассмотрим ряд множеств решений <tex>\{X^i\}: \lim\limits_{i \rightarrow \infty} (X^i) = X</tex>.
 +
 +
<tex>\lim\limits_{j \rightarrow \infty} HYP(X^j) = \lim\limits_{i \rightarrow \infty} \sum\limits_{i = 1}^{n} (x_i^j-x_{i-1}^j)(f(x_i^j) - r) =</tex>
 +
 +
<tex>= \sum\limits_{i = 1}^{n} (x_i-x_{i-1})(\lim\limits_{i \rightarrow \infty} f(x_i^j) - r) = \sum\limits_{i = 1}^{n} (x_i-x_{i-1})(f(x_i) - r) = HYP(X)</tex>
 +
 +
Получается, что <tex>HYP(X)</tex> — [[Wikipedia:Semi-continuity|полунепрерывна сверху]], следовательно, экстремум <tex>HYP</tex> достигается на компакте.
 +
}}
 +
 +
= Аппроксимация функции и ее свойства =
 +
{{Определение
 +
|id=definition3
 +
|about=3
 +
|definition=Множество решений <tex>\mathrm{X=\{x_1,x_2, \ldots , x_n\}}</tex> называется <tex>\alpha</tex>-аппроксимацией функции <tex>f \in \mathbb{F}</tex>, если
 +
<tex>\mathrm{\forall x \in [a,A] \; \exists x_i \in X : (x \leq \alpha x_i) \bigwedge (f(x) \leq \alpha f(x_i))}</tex>.
 +
}}
 +
 +
{{Определение
 +
|id=definition4
 +
|about=4
 
|definition=Коэффициентом аппроксимации функции <tex>f</tex> на <tex>X</tex> называется  
 
|definition=Коэффициентом аппроксимации функции <tex>f</tex> на <tex>X</tex> называется  
 
<tex>\mathrm{\alpha (f, X) = inf \{\alpha | X} - \alpha</tex>-аппроксимация <tex>f \}</tex>.
 
<tex>\mathrm{\alpha (f, X) = inf \{\alpha | X} - \alpha</tex>-аппроксимация <tex>f \}</tex>.
Строка 23: Строка 72:
  
 
{{Определение
 
{{Определение
|id=definition3
+
|id=definition5
|about=3
+
|about=5
 
|definition=Оптимальный коэффициент аппроксимации <tex>\alpha_{opt} = \sup \limits_{f \in \mathbb{F}} \inf \limits_{X \in \mathbb{X}} \alpha (f, X)</tex>.
 
|definition=Оптимальный коэффициент аппроксимации <tex>\alpha_{opt} = \sup \limits_{f \in \mathbb{F}} \inf \limits_{X \in \mathbb{X}} \alpha (f, X)</tex>.
 
}}
 
}}
Строка 35: Строка 84:
  
 
{{Утверждение
 
{{Утверждение
|id=statement1
+
|id=statement2
|about=1
+
|about=2
 
|statement=<tex>\alpha_{opt} \leq (\frac{A}{a})^{\frac{1}{n}}</tex>
 
|statement=<tex>\alpha_{opt} \leq (\frac{A}{a})^{\frac{1}{n}}</tex>
 
|proof=
 
|proof=
Рассмотрим <tex>\alpha = (\frac{A}{a})^{\frac{1}{n}}</tex>, тогда <tex>x_i=a \alpha^i(i=1 \ldots n)</tex>.
+
Рассмотрим <tex>\alpha = (\frac{A}{a})^{\frac{1}{n}}</tex>, тогда <tex>x_i=a \alpha^{i-1}(i=1 \ldots n)</tex>.
<tex>\{x_i\}</tex> - <tex>\alpha</tex>-аппроксимация, т.к. <tex>\forall x \in [x_i, x_{i+1}]: f(x) \leq \alpha f(x_i)</tex>.
+
<tex>\{x_i\}</tex> <tex>\alpha</tex>-аппроксимация, т.к. <tex>\forall x \in [x_i, x_{i+1}]: f(x) \leq \alpha f(x_i)</tex>.
 
Следовательно, <tex>\alpha_{opt} \leq \alpha</tex>.
 
Следовательно, <tex>\alpha_{opt} \leq \alpha</tex>.
 
}}
 
}}
  
 
{{Утверждение
 
{{Утверждение
|id=statement2
+
|id=statement3
|about=2
+
|about=4
 
|statement=<tex>\alpha_{opt} \leq (\frac{B}{b})^{\frac{1}{n}}</tex>
 
|statement=<tex>\alpha_{opt} \leq (\frac{B}{b})^{\frac{1}{n}}</tex>
 
|proof=
 
|proof=
Рассмотрим <tex>\alpha = (\frac{B}{b})^{\frac{1}{n}}</tex> и <tex>x_i=f^{-1}(B \alpha^{-i})(i=1 \ldots n)</tex>.
+
Рассмотрим <tex>\alpha = (\frac{B}{b})^{\frac{1}{n}}</tex> и <tex>x_i=f^{-1}(B \alpha^{-i}) \; (i=1 \ldots n)</tex>.
 
Тогда <tex>f(x_i) \geq B \alpha^{-i}</tex>.
 
Тогда <tex>f(x_i) \geq B \alpha^{-i}</tex>.
Следовательно, <tex>\not \exists x: f(x_i)>f(x)>B \alpha^{-1}</tex>.
+
Следовательно, <tex>\not \exists \; x: f(x_i)>f(x)>B \alpha^{-1}</tex>.
Таким образом, <tex>\{x_i\}</tex> - <tex>\alpha</tex>-аппроксимация, так как <tex>B \alpha^{-i} \leq f(x) \leq B \alpha^{-i+1}</tex>.
+
Таким образом, <tex>\{x_i\}</tex> <tex>\alpha</tex>-аппроксимация, так как <tex>B \alpha^{-i} \leq f(x) \leq B \alpha^{-i+1}</tex>.
 
}}
 
}}
  
 
Получили <tex>\alpha_{opt} \geq min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}</tex>.
 
Получили <tex>\alpha_{opt} \geq min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}</tex>.
  
Пусть <tex>\forall i \in \{0, 1, \ldots, n\} f(x)=B(B/b)^{-i/n}</tex> на интервале <tex>(a(A/a)^{(i-1)/n}, a(A/a)^{i/n}]</tex>.
+
Пусть <tex>\forall i \in \{0, 1, \ldots, n\} \; f(x)=B(B/b)^{-i/n}</tex> на интервале <tex>(a(A/a)^{(i-1)/n}, a(A/a)^{i/n}]</tex>.
  
Теперь <tex>f</tex> - это фронт Парето из <tex>n+1</tex> слоя. Предложим, множество решений <tex>\{x_1,x_2, \ldots , x_n\}</tex> из <tex>n</tex> точек. По принципу Дирихле получается, что хотя бы на одном уровне нет ни одного решения. Это означает, что верхняя граница этого уровня аппроксимируется значением <tex>\min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}</tex>.
+
Теперь <tex>f</tex> это фронт Парето из <tex>n+1</tex> слоя. Предложим, множество решений <tex>\{x_1,x_2, \ldots , x_n\}</tex> из <tex>n</tex> точек. По принципу Дирихле получается, что хотя бы на одном уровне нет ни одного решения. Это означает, что верхняя граница этого уровня аппроксимируется значением <tex>\min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}</tex>.
  
 
}}
 
}}
  
 
{{Утверждение
 
{{Утверждение
|id=statement3
+
|id=statement4
|about=3
+
|about=5
 
|statement=
 
|statement=
 
<tex>\forall n \geq \log (\min ( \frac{A}{a}, \frac{B}{b})) / \varepsilon </tex>, где <tex>\varepsilon \in (0,1)</tex> выполняется:
 
<tex>\forall n \geq \log (\min ( \frac{A}{a}, \frac{B}{b})) / \varepsilon </tex>, где <tex>\varepsilon \in (0,1)</tex> выполняется:
Строка 79: Строка 128:
  
 
'''Следствие:''' <tex>\alpha_{opt} = 1 + \Theta(1/n)</tex>.
 
'''Следствие:''' <tex>\alpha_{opt} = 1 + \Theta(1/n)</tex>.
 +
 +
= Заключение =
  
= Индикатор Гиперобъема =
+
В данной статье было введено понятие [[#definition1|индикатора]] и его применимости. Также мы рассмотрели понятие [[#definition3|аппроксимации функции]] и доказали ее основные свойства.
  
Существует много различных индикаторов, с помощью которых численно оценивают качество решений. Но широко используется только один.
+
В статье [[Связь между максимизацией гиперобъема и аппроксимацией Парето-фронта]] представлено докательство того, что для <tex> n </tex> точек оптимальный коэффициент апроксимации для данного Парето-фронта (<tex> \alpha _{OPT}</tex>) и верхняя граница коэффициента аппроксимации для множества, максимизирующего значение индикатора гиперобъема
{{Определение
+
(<tex> \alpha _{HYP}</tex>) одинаковы и равны <math> 1 + \Theta ( \frac{1}{n}) </math>.
|id=definition4
 
|about=4
 
|definition=Индикатор называется эластичным по Парето(Pareto-compliant), если для любых двух множеств решений <tex>A</tex> и <tex>B</tex> значение индикатора для <tex>A</tex> больше значения индикатора для <tex>B</tex> тогда и только тогда, когда <tex>A</tex> [[Задача_многокритериальной_оптимизации._Multiobjectivization#section=3|доминирует]] <tex>B</tex>.
 
}}
 
 
 
Дадим определение индикатора гиперобъема<tex>\left(HYP\right)</tex>.
 
{{Определение
 
|id=definition5
 
|about=5
 
|definition=Пусть дано множество решений <tex>\mathrm{X \subseteq \mathbb{R}^d}</tex>. Пусть также множество всех решений усечено некоторой точкой <tex>\mathrm{r = \left(r_1, r_2, \ldots, r_d \right)}</tex>. Тогда
 
<tex>\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)}</tex>, где через <tex>VOL(X)</tex> обозначена мера множества <tex>X</tex> [[Мера_Лебега_в_R%5En|по Лебегу]].
 
}}
 
 
 
Например, пусть <tex>\mathrm{r = \left(r_1\right)}</tex> и <tex>d=1</tex>, тогда <tex>HYP(X) = \prod \limits_{x_i \in X} (x_i-r_1)</tex>.
 
 
 
{{Утверждение
 
|id=statement4
 
|about=4
 
|statement=Пусть <tex>f \in \mathbb{F}, n \in \mathbb{N}</tex>, тогда существует, не обязательно единственное, множество решений <tex>X \in \mathbb{X}</tex>, которое максимизирует значение <tex>HYP(X)</tex> на <tex>\mathbb{X}</tex>.
 
|proof=
 
 
 
<tex>X=\{x_1, x_2, \ldots,x_n\}</tex>
 
 
 
Пусть нижняя граница <tex>r=(R_x, R_y)</tex>.
 
 
 
<tex>HYP(X)=\sum\limits_{i = 1}^{n} (x_i-x_{i-1})(f(x_i) - r)</tex>, где <tex>x_0 = R_x</tex>.
 
 
 
Рассмотрим ряд множеств решений <tex>\{X^i\}: \lim\limits_{i \rightarrow \infty} (X^i) = X</tex>.
 
 
 
<tex>\lim\limits_{j \rightarrow \infty} HYP(X^j) = \lim\limits_{i \rightarrow \infty} \sum\limits_{i = 1}^{n} (x_i^j-x_{i-1}^j)(f(x_i^j) - r) =</tex>
 
 
 
<tex>= \sum\limits_{i = 1}^{n} (x_i-x_{i-1})(\lim\limits_{i \rightarrow \infty} f(x_i^j) - r) = \sum\limits_{i = 1}^{n} (x_i-x_{i-1})(f(x_i) - r) = HYP(X)</tex>
 
 
 
Получается, что <tex>HYP(X)</tex> - верхняя полунепрерывная, следовательно, экстремум <tex>HYP</tex> достигается на компакте.
 
}}
 
 
 
{{Определение
 
|id=definition6
 
|about=6
 
|definition=Пусть <tex>f \in \mathbb{F}, n \geq 3</tex> и <tex>X = \{x_1, \ldots, x_n\} \in \mathbb{X}</tex>. Наименьшим вкладом этого множества называется <tex>MinCon(X)= \min \limits_{2 \leq i \leq n-1} (x_i-x_{i-1})(f(x_i)- f(x_{i-1}))</tex>.
 
}}
 
 
 
{{Утверждение
 
|id=statement5
 
|about=5
 
|statement=Пусть <tex>f \in \mathbb{F}, n \geq 3</tex> и <tex>X = \{x_1, \ldots, x_n\} \in \mathbb{X}</tex>, тогда
 
<tex>MinCon(X) \leq \frac{(x_n-x_1)(f(x_1)-f(x_n))}{(n-2)^2}</tex>.
 
|proof=
 
Пусть <tex>a_i=x_i-x_{i-1}</tex> <tex>\forall i \in [2,n]</tex> и <tex>b_i=f(x_i)-f(x_{i-1})</tex> <tex>\forall i \in [1,n-1]</tex>.
 
Подставив в [[#definition6|определение(6)]], получим:
 
 
 
<tex>MinCon(X)= \min \limits_{2 \leq i \leq n-1} a_i b_i \Leftrightarrow a_i \geq MinCon(X) / b_i \forall i \in [2, n-1]</tex>
 
 
 
<tex>\sum \limits_{i=2}^{n-1} MinCon(X) / b_i \leq \sum \limits_{i=2}^{n-1} a_i \leq \sum \limits_{i=2}^{n} a_i = \sum \limits_{i=2}^{n}x_i - \sum \limits_{i=1}^{n-1}x_i=x_n-x_1 </tex>
 
 
 
Тогда <tex>MinCon(X) \leq \frac{x_n-x_1}{\sum \limits_{i=2}^{n-1}1/b_i}</tex>.
 
 
 
Cреднее гармоническое меньше среднего арифметического, поэтому
 
<tex>MinCon(X) \leq \frac{x_n-x_1}{\sum \limits_{i=2}^{n-1}1/b_i} \leq \frac{(x_n-x_1)\sum \limits_{i=2}^{n-1}b_i}{(n-2)^2} \leq \frac{(x_n-x_1)(f(x_1)-f(x_n))}{(n-2)^2}</tex>.
 
}}
 
 
 
{{Теорема
 
|statement=Пусть <tex>f \in \mathbb{F}, n > 4</tex> и <tex>X = \{ x_1, \ldots, x_n \} \in \mathbb{X}</tex>. Тогда
 
<tex>\alpha = 1 + \frac{\sqrt{A/a} + \sqrt{B/b}}{n-4}</tex>.
 
|proof=
 
Допустим, что существует <tex>x</tex>, который не аппроксимируется <tex>\alpha = 1 + \frac{\sqrt{A/a} + \sqrt{B/b}}{n-4}</tex>.
 
Пусть <tex>x_i < x < x_i+1</tex>, тогда <tex>x > \alpha x_i, f(x) > \alpha f(x_{i+1})</tex>.
 
 
 
Известно, что <tex>MinCon(X) \geq (x-x_i)(f(x)-f(x_{i+1}))</tex>.
 
 
 
После подстановки получим <tex>MinCon(X) > (\alpha - 1)^2 x_i f(x_{i+1})</tex> (1).
 
 
 
Применив [[#statement5|утверждение(5)]], получим:
 
 
 
<tex>\forall i \in [3, n-1]</tex>  <tex>MinCon(X) \leq (x_i-x_1)(f(x_1)-f(x_i))/(i-2)^2 \leq x_iB/(i-2)^2</tex> (2)
 
 
 
<tex>\forall i \in [1, n-3]</tex>  <tex>MinCon(X) \leq (x_n-x_{i+1})(f(x_{i+1})-f(x_n))/(n-i-2)^2 \leq A f(x_{i+1})/(n-i-2)^2</tex> (3)
 
 
 
Таким образом, <tex>(\alpha - 1)^2 x_i f(x_{i+1}) < \min \{\frac{x_iB}{(i-2)^2} ,\frac{A f(x_{i+1})}{(n-i-2)^2}\} \Leftrightarrow</tex> <tex>\alpha < 1 + \min \{\frac{\sqrt{x_iB}}{i-2} ,\frac{\sqrt{A f(x_{i+1})}}{n-i-2}\}</tex>.
 
 
 
Т.к. <tex>\frac{\sqrt{x_iB}}{i-2}</tex> монотонно убывает, а <tex>\frac{\sqrt{A f(x_{i+1})}}{n-i-2}\}</tex> монотонно возрастает, то максимальное значение <tex>\min \{\frac{\sqrt{x_iB}}{i-2} ,\frac{\sqrt{A f(x_{i+1})}}{n-i-2}\}</tex> достигается при равенстве обоих членов:
 
 
 
<tex>\frac{\sqrt{x_iB}}{i-2} = \frac{\sqrt{A f(x_{i+1})}}{n-i-2}\} \Leftrightarrow i = 2 + \frac{(n-4)\sqrt{B/b}}{\sqrt{A/a} + \sqrt{B/b}}</tex>.
 
 
 
Получим верхнюю оценку для <tex>\alpha</tex>: <tex>\alpha < 1 + \frac{\sqrt{A/a} + \sqrt{B/b}}{n-4}</tex>.
 
 
 
Вышесказанное верно для <tex>3 \leq i \leq n-3</tex>.
 
 
 
Для <tex>i = 1, 2</tex> из (1) и (3) следует, что <tex>\alpha < 1 + \frac{\sqrt{A/a}}{n-i-2} \leq 1 + \frac{\sqrt{A/a}}{n-4}</tex>, что невозможно по условию теоремы.
 
 
 
Для <tex>i = n-2, n-2</tex> по (1) и (2) <tex>\alpha < 1 + \frac{ \sqrt{B/b} } {i-2}  \leq 1 + \frac {\sqrt {B/b} } {n-4}</tex>, что тоже невозможно по условию теоремы.
 
 
 
}}
 
  
 
= Источники =
 
= Источники =
# [http://rain.ifmo.ru/~tsarev/teaching/ea-2012/lectures/4/2010GECCO_Hyp.pdf Friedrich T., Bringmann K. - The Maximum Hypervolume Set Yields Near-optimal Approximation]
+
<references/>
# [http://rain.ifmo.ru/~tsarev/teaching/ea-2012/lectures/3/multiobjectivization.pdf Corne D., Knowles J., Watson R. - Reducing Local Optima in Single-Objective Problems by Multi-objectivization]
 
# [http://www.mpi-inf.mpg.de/~tfried/paper/2009GECCO.pdf Friedrich T., Horoba C., Neumann F. - Multiplicative Approximations and the Hypervolume Indicator]
 
# [ftp://ife.ee.ethz.ch/pub/people/zitzler/ZK2004a.pdf Kunzli S., Zitzle E. - Indicator-Based Selection in Multiobjective Search]
 

Текущая версия на 19:33, 4 сентября 2022

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

Применение

В работе [1] предлагают с помощью индикатора [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 = \{x_i\}[/math] — популяция, [math]k[/math] — некая константа, зависящая от текущей задачи. Данная функция приспособленности колличественно измеряет потери в качестве поколения при удалении особи.

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

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

В работе [2] детально рассматривается применение индикатора гиперобъема в эволюционных алгоритмах.

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

Гиперобъем

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


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

Определение:
Пусть дано множество решений [math]\mathrm{X \subseteq \mathbb{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(r_1\right)}[/math] и [math]d=1[/math], тогда [math]HYP(X) = \prod \limits_{x_i \in X} (x_i-r_1)[/math].

Для задач двукритериальной оптимизацйии будем рассмотрим функции вида: [math]f:[a,A] \rightarrow [b,B][/math], где [math]f[/math] убывает и [math]f(a)=B, f(A)=b[/math].

Множество всех таких функций обозначим через [math]\mathbb{F}[/math]. Множество всех множеств решений обозначим через [math]\mathbb{X}[/math].

Утверждение (1):
Пусть [math]f \in \mathbb{F}, n \in \mathbb{N}[/math], тогда существует, не обязательно единственное, множество решений [math]X \in \mathbb{X}[/math], которое максимизирует значение [math]HYP(X)[/math] на [math]\mathbb{X}[/math].
[math]\triangleright[/math]

[math]X=\{x_1, x_2, \ldots,x_n\}[/math]

Пусть нижняя граница [math]r=(R_x, R_y)[/math].

[math]HYP(X)=\sum\limits_{i = 1}^{n} (x_i-x_{i-1})(f(x_i) - r)[/math], где [math]x_0 = R_x[/math].

Рассмотрим ряд множеств решений [math]\{X^i\}: \lim\limits_{i \rightarrow \infty} (X^i) = X[/math].

[math]\lim\limits_{j \rightarrow \infty} HYP(X^j) = \lim\limits_{i \rightarrow \infty} \sum\limits_{i = 1}^{n} (x_i^j-x_{i-1}^j)(f(x_i^j) - r) =[/math]

[math]= \sum\limits_{i = 1}^{n} (x_i-x_{i-1})(\lim\limits_{i \rightarrow \infty} f(x_i^j) - r) = \sum\limits_{i = 1}^{n} (x_i-x_{i-1})(f(x_i) - r) = HYP(X)[/math]

Получается, что [math]HYP(X)[/math]полунепрерывна сверху, следовательно, экстремум [math]HYP[/math] достигается на компакте.
[math]\triangleleft[/math]

Аппроксимация функции и ее свойства

Определение:
Множество решений [math]\mathrm{X=\{x_1,x_2, \ldots , x_n\}}[/math] называется [math]\alpha[/math]-аппроксимацией функции [math]f \in \mathbb{F}[/math], если [math]\mathrm{\forall x \in [a,A] \; \exists x_i \in X : (x \leq \alpha x_i) \bigwedge (f(x) \leq \alpha f(x_i))}[/math].


Определение:
Коэффициентом аппроксимации функции [math]f[/math] на [math]X[/math] называется [math]\mathrm{\alpha (f, X) = inf \{\alpha | X} - \alpha[/math]-аппроксимация [math]f \}[/math].


Определение:
Оптимальный коэффициент аппроксимации [math]\alpha_{opt} = \sup \limits_{f \in \mathbb{F}} \inf \limits_{X \in \mathbb{X}} \alpha (f, X)[/math].


Теорема (1):
[math]\alpha_{opt} = min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}[/math]
Доказательство:
[math]\triangleright[/math]
Утверждение (2):
[math]\alpha_{opt} \leq (\frac{A}{a})^{\frac{1}{n}}[/math]
[math]\triangleright[/math]

Рассмотрим [math]\alpha = (\frac{A}{a})^{\frac{1}{n}}[/math], тогда [math]x_i=a \alpha^{i-1}(i=1 \ldots n)[/math]. [math]\{x_i\}[/math][math]\alpha[/math]-аппроксимация, т.к. [math]\forall x \in [x_i, x_{i+1}]: f(x) \leq \alpha f(x_i)[/math].

Следовательно, [math]\alpha_{opt} \leq \alpha[/math].
[math]\triangleleft[/math]
Утверждение (4):
[math]\alpha_{opt} \leq (\frac{B}{b})^{\frac{1}{n}}[/math]
[math]\triangleright[/math]

Рассмотрим [math]\alpha = (\frac{B}{b})^{\frac{1}{n}}[/math] и [math]x_i=f^{-1}(B \alpha^{-i}) \; (i=1 \ldots n)[/math]. Тогда [math]f(x_i) \geq B \alpha^{-i}[/math]. Следовательно, [math]\not \exists \; x: f(x_i)\gt f(x)\gt B \alpha^{-1}[/math].

Таким образом, [math]\{x_i\}[/math][math]\alpha[/math]-аппроксимация, так как [math]B \alpha^{-i} \leq f(x) \leq B \alpha^{-i+1}[/math].
[math]\triangleleft[/math]

Получили [math]\alpha_{opt} \geq min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}[/math].

Пусть [math]\forall i \in \{0, 1, \ldots, n\} \; f(x)=B(B/b)^{-i/n}[/math] на интервале [math](a(A/a)^{(i-1)/n}, a(A/a)^{i/n}][/math].

Теперь [math]f[/math] — это фронт Парето из [math]n+1[/math] слоя. Предложим, множество решений [math]\{x_1,x_2, \ldots , x_n\}[/math] из [math]n[/math] точек. По принципу Дирихле получается, что хотя бы на одном уровне нет ни одного решения. Это означает, что верхняя граница этого уровня аппроксимируется значением [math]\min ( \frac{A}{a}, \frac{B}{b})^{\frac{1}{n}}[/math].
[math]\triangleleft[/math]
Утверждение (5):
[math]\forall n \geq \log (\min ( \frac{A}{a}, \frac{B}{b})) / \varepsilon [/math], где [math]\varepsilon \in (0,1)[/math] выполняется:
  • [math]\alpha_{opt} \geq 1 + \frac{\log (\min ( \frac{A}{a}, \frac{B}{b}))}{n}[/math]
  • [math]\alpha_{opt} \leq 1 + (1+\varepsilon)\frac{\log (\min ( \frac{A}{a}, \frac{B}{b}))}{n}[/math]
[math]\triangleright[/math]

Оба утверждения следуют из теоремы(1).

Для доказательства первого утверждения достаточно заметить, что [math]\forall x \in \mathbb{R}: e^x\geq 1+x [/math].

Второе утверждение следует из того, что [math]\forall x \in [0, \varepsilon]: e^x \leq 1+(1+\varepsilon)x [/math].
[math]\triangleleft[/math]


Следствие: [math]\alpha_{opt} = 1 + \Theta(1/n)[/math].

Заключение

В данной статье было введено понятие индикатора и его применимости. Также мы рассмотрели понятие аппроксимации функции и доказали ее основные свойства.

В статье Связь между максимизацией гиперобъема и аппроксимацией Парето-фронта представлено докательство того, что для [math] n [/math] точек оптимальный коэффициент апроксимации для данного Парето-фронта ([math] \alpha _{OPT}[/math]) и верхняя граница коэффициента аппроксимации для множества, максимизирующего значение индикатора гиперобъема ([math] \alpha _{HYP}[/math]) одинаковы и равны [math] 1 + \Theta ( \frac{1}{n}) [/math].

Источники