Оценка алгоритма распределения

редактировать
Оценка алгоритма распределения. Для каждой итерации i выполняется случайная выборка для совокупности P в распределении PDu. Затем параметры распределения PDe оцениваются с использованием выбранных точек PS. В проиллюстрированном примере оптимизируется непрерывная целевая функция f (X) с уникальным оптимумом O. Выборка (следуя нормальному распределению N) концентрируется вокруг оптимума по мере выполнения алгоритма раскрутки.

Оценка алгоритмов распределения (EDA ), иногда называемые вероятностными генетическими алгоритмами построения моделей (PMBGA), представляют собой методы стохастической оптимизации, которые направляют поиск оптимума путем построения и выборки явных вероятностных моделей. перспективных вариантов решения. Оптимизация рассматривается как серия последовательных обновлений вероятностной модели, начиная с модели, кодирующей неинформативные априорные решения по сравнению с допустимыми, и заканчивая моделью, которая генерирует только глобальные оптимумы.

EDA принадлежат к классу эволюционные алгоритмы. Основное различие между EDA и большинством традиционных эволюционных алгоритмов заключается в том, что эволюционные алгоритмы генерируют новые возможные решения с использованием неявного распределения, определенного одним или несколькими операторами вариации, тогда как EDA используют явное распределение вероятностей, закодированное байесовской сетью, многомерное нормальное распределение или другой класс модели. Подобно другим эволюционным алгоритмам, EDA можно использовать для решения задач оптимизации, определенных для ряда представлений от векторов до S-выражений в стиле LISP, и качество возможных решений часто оценивается с использованием одной или нескольких целевых функций.

Общая процедура EDA описана ниже:

t: = 0 инициализировать модель M (0) для представления равномерного распределения по допустимым решениям, а (завершение критерии не выполнены) do P: = сгенерировать N>0 возможных решений путем выборки M (t) F: = оценить все возможные решения в PM (t + 1): = adjust_model (P, F, M ( t)) t: = t + 1

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

Например, если совокупность представлена ​​строками битов длиной 4, EDA может представлять совокупность многообещающих решений с использованием одного вектора из четырех вероятностей (p1, p2, p3, p4), где каждый компонент p определяет вероятность того, что позиция будет равна 1. Используя этот вектор вероятности, можно создать произвольное количество возможных решений.

Содержание
  • 1 Оценка алгоритмов распределения (EDA)
  • 2 Одномерные факторизации
    • 2.1 Алгоритм одномерного маржинального распределения (UMDA)
    • 2.2 Популяционное инкрементное обучение (PBIL)
    • 2.3 Компактное генетическое алгоритм (cGA)
  • 3 Двумерные факторизации
    • 3.1 Максимизация взаимной информации входной кластеризации (MIMIC)
    • 3.2 Алгоритм двумерного предельного распределения (BMDA)
  • 4 Многомерные факторизации
    • 4.1 Расширенный компактный генетический алгоритм (eCGA)
    • 4.2 Байесовский алгоритм оптимизации (BOA)
    • 4.3 Генетический алгоритм дерева связей (LTGA)
  • 5 Прочие
  • 6 Связанные
  • 7 Ссылки
Оценка алгоритмов распределения (EDA)

В этом разделе описаны модели, построенные некоторыми хорошо известными EDA разного уровня сложности. Всегда предполагается совокупность P (t) {\ displaystyle P (t)}P (t) в поколении t {\ displaystyle t}t , оператор выбора S {\ displaystyle S}S , оператор построения модели α {\ displaystyle \ alpha}\ alpha и оператор выборки β {\ displaystyle \ beta}\ beta .

Одномерные факторизации

Самые простые EDA предполагают, что переменные решения независимы, т.е. p (X 1, X 2) = p (X 1) ⋅ p (X 2) {\ displaystyle p (X_ {1}, X_ {2}) = p (X_ {1}) \ cdot p (X_ {2})}{\ displaystyle p (X_ {1}, X_ {2 }) = p (X_ {1}) \ cdot p (X_ {2})} . Следовательно, одномерные EDA полагаются только на одномерную статистику, а многомерные распределения должны быть факторизованы как произведение N {\ displaystyle N}N одномерных распределений вероятностей,

D Одномерные: = p (X 1, …, XN) = ∏ i = 1 N p (X i). {\ displaystyle D _ {\ text {Univariate}}: = p (X_ {1}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i}).}{\ displaystyle D _ {\ text {Одномерный }}: = p (X_ {1}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i}).}

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

Алгоритм одномерного предельного распределения (UMDA)

UMDA - это простой EDA, в котором используется оператор α UMDA {\ displaystyle \ alpha _ {UMDA}}{\ displaystyle \ alpha _ {UMDA}} для оценки предельных вероятностей от выбранной совокупности S (P (t)) {\ displaystyle S (P (t))}{\ displaystyle S (P (t))} . Предполагая, что S (P (t)) {\ displaystyle S (P (t))}{\ displaystyle S (P (t))} содержит λ {\ displaystyle \ lambda}\ lambda элементов, α UMDA {\ displaystyle \ alpha _ {UMDA}}{\ displaystyle \ alpha _ {UMDA}} производит вероятности:

pt + 1 (X i) = 1 λ ∑ x ∈ S (P (t)) xi, ∀ i ∈ 1, 2,…, N. {\ displaystyle p_ {t + 1} (X_ {i}) = {\ dfrac {1} {\ lambda}} \ sum _ {x \ in S (P (t))} x_ {i}, ~ \ forall i \ in 1,2, \ dots, N.}{\ displaystyle p_ {t + 1} (X_ {i}) = {\ dfrac {1} {\ lambda}} \ sum _ {x \ in S (P (t))} x_ {i}, ~ \ forall i \ in 1,2, \ dots, N.}

Каждый шаг UMDA можно описать следующим образом:

D (t + 1) = α UMDA ∘ S ∘ β λ (D (t)). {\ displaystyle D (t + 1) = \ alpha _ {\ text {UMDA}} \ circ S \ circ \ beta _ {\ lambda} (D (t)).}{\ displaystyle D (t + 1) = \ alpha _ {\ text {UMDA}} \ circ S \ circ \ beta _ {\ lambda } (D (t)).}

Постепенное обучение на основе совокупности (PBIL)

PBIL неявно представляет совокупность своей моделью, из которой он выбирает новые решения и обновляет модель. В каждом поколении отбираются μ {\ displaystyle \ mu}\ mu индивидов и выбираются λ ≤ μ {\ displaystyle \ lambda \ leq \ mu}{\ displaystyle \ lambda \ leq \ mu} . Затем такие люди используются для обновления модели следующим образом:

pt + 1 (X i) = (1 - γ) pt (X i) + (γ / λ) ∑ x ∈ S (P (t)) xi, ∀ я ∈ 1, 2,…, N, {\ displaystyle p_ {t + 1} (X_ {i}) = (1- \ gamma) p_ {t} (X_ {i}) + (\ gamma / \ lambda) \ sum _ {x \ in S (P (t))} x_ {i}, ~ \ forall i \ in 1,2, \ dots, N,}{\ displaystyle p_ {t + 1} (X_ {i}) = (1- \ gamma) p_ {t} (X_ {i}) + (\ gamma / \ lambda) \ sum _ {x \ in S (P (t))} x_ {i}, ~ \ forall i \ in 1,2, \ dots, N,}

где γ ∈ (0, 1 ] {\ displaystyle \ gamma \ in (0,1]}{\ displaystyle \ gamma \ in (0,1]} - параметр, определяющий скорость обучения, небольшое значение определяет, что предыдущая модель pt (X i) {\ displaystyle p_ {t} (X_ {i})}{\ displaystyle p_ {t} (X_ {i})} должен быть лишь немного изменен с помощью новых решений, выбранных в качестве образца. PBIL можно описать как

D (t + 1) = α PIBIL ∘ S ∘ β μ (D (t)) {\ displaystyle D (t + 1) = \ alpha _ {\ text {PIBIL}} \ circ S \ circ \ beta _ {\ mu} (D (t))}{\ displaystyle D (t + 1) = \ alpha _ {\ text {PIBIL}} \ circ S \ circ \ бета _ {\ mu} (D (t))}

Компактный генетический алгоритм (cGA)

CGA также полагается на неявные популяции, определяемые одномерными распределениями. В каждом поколении t {\ displaystyle t}t , два человека x, y {\ displaystyle x, y}x, y выбираются, п (t) знак равно β 2 (D (t)) {\ displaystyle P (t) = \ beta _ {2} (D (t))}{\ displaystyle П (т) = \ бета _ {2} (D (т))} . Затем совокупность P (t) {\ displaystyle P (t)}P (t) сортируется в порядке убывания пригодности, S Sort (f) (P (t)) {\ displaystyle S_ {{\ text {Sort}} (f)} (P (t))}{\ displaystyle S _ {{\ text {Sort}} (f)} (P (t))} , где u {\ displaystyle u}и является лучшим, а v {\ displaystyle v}v - худшее решение. CGA оценивает одномерные вероятности следующим образом:

pt + 1 (X i) = pt (X i) + γ (ui - vi), ∀ i ∈ 1, 2,…, N, {\ displaystyle p_ {t + 1 } (X_ {i}) = p_ {t} (X_ {i}) + \ gamma (u_ {i} -v_ {i}), \ quad \ forall i \ in 1,2, \ dots, N,}{\ displaystyle p_ {t + 1} (X_ {i}) = p_ {t} (X_ {i}) + \ gamma (u_ {i} -v_ {i}), \ quad \ forall i \ in 1,2, \ dots, N,}

где, γ ∈ (0, 1] {\ displaystyle \ gamma \ in (0,1]}{\ displaystyle \ gamma \ in (0,1]} - константа, определяющая скорость обучения, обычно устанавливается к γ = 1 / N {\ displaystyle \ gamma = 1 / N}{\ displaystyle \ gamma = 1 / N} . CGA можно определить как

D (t + 1) = α CGA ∘ S Sort (f) ∘ β 2 (D (t)) {\ displaystyle D (t + 1) = \ alpha _ {\ text {CGA}} \ circ S _ {{\ text {Sort}} (f)} \ circ \ beta _ { 2} (D (t))}{\ displaystyle D (t + 1) = \ alpha _ {\ text {CGA}} \ circ S _ {{\ text {Sort}} (f)} \ circ \ beta _ {2 } (D (t))}

Двумерные факторизации

Хотя одномерные модели могут быть вычислены эффективно, во многих случаях они недостаточно репрезентативны, чтобы обеспечить лучшую производительность, чем ГА. Чтобы преодолеть такой недостаток, в сообществе EDA было предложено использование двумерной факторизации, в которой можно было моделировать зависимости между парами переменных.Можно определить двумерную факторизацию d следующим образом, где π i {\ displaystyle \ pi _ {i}}\ pi _ {i} содержит возможную переменную, зависящую от X i {\ displaystyle X_ {i}}X_ {i} , т.е. | π i | Знак равно 1 {\ displaystyle | \ pi _ {i} | = 1}{\ displaystyle | \ pi _ {i} | = 1} .

D двумерное: = p (X 1,…, X N) = ∏ i = 1 N p (X i | π i). {\ displaystyle D _ {\ text {Bivariate}}: = p (X_ {1}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i} | \ pi _ {i}).}{\ displaystyle D _ {\ text {Bivariate}}: = p (X_ {1}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i} | \ pi _ {i}).}

Двумерные и многомерные распределения обычно представлены как вероятностные графические модели (графики), в которых ребра обозначают статистические зависимости (или условные вероятности), а вершины обозначают переменные. Чтобы узнать структуру PGM на основе связывания данных, используется обучение.

Взаимная информация, максимизирующая кластеризацию ввода (MIMIC)

MIMIC факторизует совместное распределение вероятностей в цепочечной модели, представляющей последовательные зависимости между переменными. Он находит перестановку переменных решения, r: i ↦ j {\ displaystyle r: i \ mapsto j}{\ displaystyle r: i \ mapsto j} , такую, что xr (1) xr (2),…, xr (N) {\ displaystyle x_ {r (1)} x_ {r (2)}, \ dots, x_ {r (N)}}{\ displaystyle x_ {r (1)} x_ {r (2)}, \ dots, x_ {r (N)}} минимизирует расхождение Кульбака-Лейблера по отношению к истинному распределению вероятностей, т.е. π r (i + 1) = {X r (i)} {\ displaystyle \ pi _ {r (i + 1)} = \ {X_ {r (i)} \}}{\ displaystyle \ pi _ {r (i + 1)} = \ {X_ {r (i)} \}} . MIMIC моделирует распределение

pt + 1 (X 1,…, XN) = pt (X r (N)) ∏ i = 1 N - 1 pt (X r (i) | X r (i + 1)). {\ displaystyle p_ {t + 1} (X_ {1}, \ dots, X_ {N}) = p_ {t} (X_ {r (N)}) \ prod _ {i = 1} ^ {N-1 } p_ {t} (X_ {r (i)} | X_ {r (i + 1)}).}{\ displaystyle p_ {t + 1} (X_ {1}, \ dots, X_ {N}) = p_ {t} (X_ {r (N)}) \ prod _ {i = 1} ^ {N-1} p_ {t} (X_ {r (i)} | X_ {r (i + 1)}).}

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

P (t + 1) = β μ ∘ α MIMIC ∘ S (P (t)). {\ displaystyle P (t + 1) = \ beta _ {\ mu} \ circ \ alpha _ {\ text {MIMIC}} \ circ S (P (t)).}{\ displaystyle P ( t + 1) = \ beta _ {\ mu} \ circ \ alpha _ {\ text {MIMIC}} \ circ S (P (t)).}

Алгоритм двумерного предельного распределения (BMDA)

BMDA факторизует совместное распределение вероятностей в двумерных распределениях. Сначала случайно выбранная переменная добавляется в качестве узла в график, наиболее зависимая переменная к одной из переменных на графике выбирается среди тех, которых еще нет на графике, эта процедура повторяется до тех пор, пока ни одна из оставшихся переменных не зависит от какой-либо переменной в графе. график (проверенный по пороговому значению).

Результирующая модель представляет собой лес с несколькими деревьями с корнями в узлах Υ t {\ displaystyle \ Upsilon _ {t}}{\ displaystyle \ Upsilon _ {t}} . Учитывая I t {\ displaystyle I_ {t}}I_t некорневые переменные, BMDA оценивает факторизованное распределение, в котором корневые переменные могут быть выбраны независимо, тогда как все остальные должны быть обусловлены родительская переменная π i {\ displaystyle \ pi _ {i}}\ pi _ {i} .

pt + 1 (X 1,…, XN) = ∏ X i ∈ Υ tpt (X i) ⋅ ∏ X i ∈ I tpt ( X i | π i). {\ displaystyle p_ {t + 1} (X_ {1}, \ dots, X_ {N}) = \ prod _ {X_ {i} \ in \ Upsilon _ {t}} p_ {t} (X_ {i}) \ cdot \ prod _ {X_ {i} \ in I_ {t}} p_ {t} (X_ {i} | \ pi _ {i}).}{\ displaystyle p_ {t + 1} (X_ {1}, \ dots, X_ {N}) = \ prod _ {X_ {i} \ in \ Upsilon _ {t}} p_ {t} (X_ {i}) \ cdot \ prod _ {X_ {i} \ in I_ {t}} p_ {t} ( X_ {i} | \ pi _ {i}).}

Каждый шаг BMDA определяется следующим образом

P (t + 1) = β μ ∘ α BMDA ∘ S (P (t)). {\ displaystyle P (t + 1) = \ beta _ {\ mu} \ circ \ alpha _ {\ text {BMDA}} \ circ S (P (t)).}{\ displaystyle P (t + 1) = \ beta _ {\ mu} \ circ \ alpha _ {\ text {BMDA}} \ circ S (P (t)).}

Многомерные факторизации

Следующим этапом развития EDA стало использование многомерной факторизации. В этом случае совместное распределение вероятностей обычно разлагается на несколько компонентов ограниченного размера | π i | ≤ К, ∀ я ∈ 1, 2,…, N {\ displaystyle | \ pi _ {i} | \ leq K, ~ \ forall i \ in 1,2, \ dots, N}{\ displaystyle | \ pi _ {i} | \ leq K, ~ \ forall i \ in 1,2, \ dots, N} .

p (X 1,…, XN) знак равно ∏ я знак равно 1 N п (Икс я | π я) {\ Displaystyle р (X_ {1}, \ точки, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i} | \ pi _ {i})}{\ displaystyle p (X_ {1}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i} | \ pi _ {i}) }

Изучение PGM, кодирующих многомерные распределения, является вычислительно затратной задачей, поэтому для EDA обычно оценивают многомерную статистику на основе двумерной статистики. Такая релаксация позволяет построить PGM за полиномиальное время в N {\ displaystyle N}N ; однако это также ограничивает универсальность таких EDA.

Расширенный компактный генетический алгоритм (eCGA)

ECGA был одним из первых EDA, который использовал многомерные факторизации, в которых можно моделировать зависимости высокого порядка между переменными решения. Его подход факторизует совместное распределение вероятностей в произведении многомерных маржинальных распределений. Допустим, T eCGA = {τ 1,…, τ Ψ} {\ displaystyle T _ {\ text {eCGA}} = \ {\ tau _ {1}, \ dots, \ tau _ {\ Psi} \}}{\ displaystyle T _ {\ text {eCGA}} = \ {\ tau _ {1}, \ dots, \ tau _ {\ Psi} \}} - это набор подмножеств, в котором каждый τ ∈ T eCGA {\ displaystyle \ tau \ in T _ {\ text {eCGA}}}{\ displaystyle \ tau \ in T _ {\ text {eCGA}}} представляет собой набор связей, содержащий | τ | ≤ K {\ displaystyle | \ tau | \ leq K}{\ displaystyle | \ tau | \ leq K} переменные. Факторизованное совместное распределение вероятностей представляется следующим образом:

p (X 1,…, X N) = ∏ τ ∈ T eCGA p (τ). {\ displaystyle p (X_ {1}, \ dots, X_ {N}) = \ prod _ {\ tau \ in T _ {\ text {eCGA}}} p (\ tau).}{\ displaystyle p (X_ {1}, \ dots, X_ {N}) = \ prod _ {\ tau \ in T _ {\ text {eCGA}}} p (\ tau).}

ECGA популяризировал термин «изучение связей» как обозначение процедур, которые идентифицируют наборы связей. Его процедура обучения связям основана на двух показателях: (1) сложности модели (MC) и (2) сложности сжатой совокупности (CPC). MC определяет размер представления модели в виде количества битов, необходимых для хранения всех предельных вероятностей

MC = log 2 ⁡ (λ + 1) ∑ τ ∈ T eCGA (2 | τ | - 1), {\ displaystyle MC = \ log _ {2} (\ lambda +1) \ sum _ {\ tau \ in T _ {\ text {eCGA}}} (2 ^ {| \ tau | -1}),}{\ displaystyle MC = \ log _ {2 } (\ lambda +1) \ sum _ {\ tau \ in T _ {\ text {eCGA}}} (2 ^ {| \ tau | -1}),}

Цена за клик, с другой стороны, количественно оценивает сжатие данных в терминах энтропии предельного распределения по всем разделам, где λ {\ displaystyle \ lambda}\ lambda - выбранный размер совокупности, | τ | {\ displaystyle | \ tau |}{\ displaystyle | \ tau |} - количество переменных решения в наборе связей τ {\ displaystyle \ tau}\ tau и H (τ) {\ displaystyle H (\ tau)}{\ displaystyle H (\ tau)} - совместная энтропия переменных в τ {\ displaystyle \ tau}\ tau

CPC = λ ∑ τ ∈ T eCGA H (τ). {\ displaystyle CPC = \ lambda \ sum _ {\ tau \ in T _ {\ text {eCGA}}} H (\ tau).}{\ displaystyle CPC = \ lambda \ sum _ {\ tau \ in T _ {\ text {eCGA}}} H (\ tau).}

Обучение связям в ECGA работает следующим образом: (1) Вставьте каждую переменную в кластере: (2) вычислить CCC = MC + CPC для текущих наборов связей, (3) проверить увеличение CCC, обеспечиваемое объединением пар кластеров, (4) эффективно объединить те кластеры с наибольшим улучшением CCC. Эта процедура повторяется до тех пор, пока не станут возможными улучшения CCC, и будет получена модель связи T eCGA {\ displaystyle T _ {\ text {eCGA}}}{\ displaystyle T _ {\ text {eCGA}}} . ECGA работает с конкретными популяциями, поэтому, используя факторизованное распределение, смоделированное с помощью ECGA, его можно описать как

P (t + 1) = β μ ∘ α eCGA ∘ S (P (t)) {\ displaystyle P ( t + 1) = \ beta _ {\ mu} \ circ \ alpha _ {\ text {eCGA}} \ circ S (P (t))}{\ displaystyle P (t + 1) = \ beta _ {\ mu} \ circ \ alpha _ {\ text {eCGA}} \ circ S (P (t))}

Байесовский алгоритм оптимизации (BOA)

BOA использует байесовские сети для моделирования и выборки многообещающих решений. Байесовские сети представляют собой ориентированные ациклические графы, в которых узлы представляют переменные, а ребра представляют собой условные вероятности между парой переменных. Значение переменной xi {\ displaystyle x_ {i}}x_{i}может быть обусловлено максимум K {\ displaystyle K}K другими переменными, определенными в π я {\ displaystyle \ pi _ {i}}\ pi _ {i} . BOA создает PGM, кодирующий факторизованное совместное распределение, в котором параметры сети, то есть условные вероятности, оцениваются на основе выбранной совокупности с использованием оценки максимального правдоподобия.

p (X 1, X 2,…, X N) = ∏ i = 1 N p (X i | π i). {\ displaystyle p (X_ {1}, X_ {2}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i} | \ pi _ {i}).}{\ displaystyle p (X_ {1}, X_ {2}, \ dots, X_ {N}) = \ prod _ {i = 1} ^ {N} p (X_ {i} | \ pi _ {i}).}

С другой стороны, байесовская сетевая структура должна строиться итеративно (связывание-обучение). Он начинается с сети без ребер и на каждом шаге добавляет ребро, которое лучше улучшает некоторые показатели оценки (например, байесовский информационный критерий (BIC) или показатель Байеса-Дирихле с эквивалентностью правдоподобия (BDe)). Показатель скоринга оценивает структуру сети в соответствии с ее точностью при моделировании выбранной популяции. На основе построенной сети BOA отбирает новые многообещающие решения следующим образом: (1) он вычисляет родовой порядок для каждой переменной, причем каждому узлу предшествуют его родители; (2) каждая переменная условно отбирается для своих родителей. При таком сценарии каждый шаг BOA можно определить как

P (t + 1) = β μ ∘ α BOA ∘ S (P (t)) {\ displaystyle P (t + 1) = \ beta _ {\ mu } \ circ \ alpha _ {\ text {BOA}} \ circ S (P (t))}{\ displaystyle P (t + 1) = \ beta _ {\ mu} \ circ \ alpha _ { \ текст {BOA}} \ circ S (P (t))}

Генетический алгоритм дерева связей (LTGA)

LTGA отличается от большинства EDA в том смысле, что не моделирует явно распределение вероятностей, а только модель связи, называемую деревом связей. Связь T {\ displaystyle T}T - это набор наборов связей, не связанный с распределением вероятностей, поэтому нет возможности пробовать новые решения непосредственно из T {\ displaystyle T}T . Модель связи представляет собой дерево связей, созданное в виде семейства наборов (FOS).

T LT = {{x 1}, {x 2}, {x 3}, {x 4}, {x 1, x 2}, {x 3, x 4}}. {\ displaystyle T _ {\ text {LT}} = \ {\ {x_ {1} \}, \ {x_ {2} \}, \ {x_ {3} \}, \ {x_ {4} \}, \ {x_ {1}, x_ {2} \}, \ {x_ {3}, x_ {4} \} \}.}{\ displaystyle T_ { \ text {LT}} = \ {\ {x_ {1} \}, \ {x_ {2} \}, \ {x_ {3} \}, \ {x_ {4} \}, \ {x_ {1 }, x_ {2} \}, \ {x_ {3}, x_ {4} \} \}.}

Процедура обучения дереву связей - это иерархическая кластеризация алгоритм, который работает следующим образом. На каждом шаге объединяются два ближайших кластера i {\ displaystyle i}iи j {\ displaystyle j}j , эта процедура повторяется до тех пор, пока не останется только один кластер, каждое поддерево хранится как подмножество τ ∈ T LT {\ displaystyle \ tau \ in T _ {\ text {LT}}}{\ displaystyle \ tau \ в T _ {\ text {LT}}} .

LTGA использует T LT {\ displaystyle T _ {\ text {LT }}}{\ displaystyle T _ {\ text {LT}}} для руководства процедурой «оптимального перемешивания», которая напоминает оператор рекомбинации, но допускает только улучшающие ходы. Мы обозначаем его как R LTGA {\ displaystyle R _ {\ text {LTGA}}}{\ displaystyle R _ {\ text {LTGA}}} , где обозначение x [τ] ← y [τ] {\ displaystyle x [\ tau ] \ gets y [\ tau]}{\ displaystyle x [\ tau] \ получает y [\ tau]} указывает перенос генетического материала, индексированного τ {\ displaystyle \ tau}\ tau из y {\ displaystyle y}y - x {\ displaystyle x}x .

Алгоритм Оптимальное смешивание генофонда Вход: семейство подмножеств T LT {\ displaystyle T _ {\ text {LT}} }{\ displaystyle T _ {\ text {LT}}} и совокупность P (t) {\ displaystyle P (t)}P (t) Вывод: совокупность P (t + 1) {\ displaystyle P (t +1)}{\ displaystyle P (t + 1)} . для каждого xi {\ displaystyle x_ {i}}x_{i}inP (t) {\ displaystyle P (t)}P (t) doдля каждого τ {\ displaystyle \ tau}\ tau inT LT {\ displaystyle T _ {\ text {LT}}}{\ displaystyle T _ {\ text {LT}}} doвыберите случайный xj ∈ P (t): xi ≠ xj {\ displaystyle x_ {j} \ in P (t): x_ {i} \ neq x_ {j}}{\ displaystyle x_ {j} \ in P (t): x_ {i} \ neq x_ {j}} fxi {\ displaystyle f_ {x_ {i}}}{\ displaystyle f_ {x_ {i}}} : = f (xi) {\ displaystyle f (x_ {i})}f (x_ {i}) xi [τ] {\ displaystyle x_ {i} [\ tau]}{\ displaystyle x_ {i} [\ tau]} : = xj [τ] {\ дис стиль игры x_ {j} [\ tau]}{\ displaystyle x_ {j} [\ tau]} iff (xi) ≤ fxi {\ displaystyle f (x_ {i}) \ leq f_ {x_ {i}}}{\ displaystyle f (x_ {i}) \ leq f_ {x_ {i}}} , затемxi [τ]: = xj [τ] {\ displaystyle x_ {i} [\ tau]: = x_ {j} [\ tau]}{\ displaystyle x_ {i} [\ tau]: = x_ {j} [\ tau]} возвратP (t) {\ displaystyle P ( t)}P (t) 
  • «←» означает присвоение. Например, «наибольший ← элемент» означает, что значение наибольшего изменения значения элемента.
  • "return "завершает алгоритм и выводит следующее значение.

LTGA не реализует типичные операторы выбора, вместо этого отбор выполняется во время рекомбинации. Подобные идеи обычно применялись в эвристике локального поиска, и в этом смысле LTGA можно рассматривать как гибридный метод. В итоге один шаг LTGA определяется как

P (T + 1) знак равно R LTGA (P (t)) ∘ α LTGA (P (t)) {\ displaystyle P (t + 1) = R _ {\ text {LTGA}} (P (t)) \ circ \ alpha _ {\ text {LTGA}} (P (t))}{ \ ди splaystyle P (t + 1) = R _ {\ text {LTGA}} (P (t)) \ circ \ alpha _ {\ text {LTGA}} (P (t))}

Другое
  • Группы вероятностей (PC)
  • Восхождение на холм с обучением (HCwL)
  • Оценка многомерного нормальный алгоритм (EMNA)
  • алгоритм оценки байесовских сетей (EBNA)
  • Стохастическое восхождение на холм с обучением по векторам нормального распределения (SHCLVND)
  • PBIL с реальным кодированием
  • Эгоистичный генный алгоритм (SG)
  • Компактная дифференциальная эволюция ( cDE) и его варианты
  • Оптимизация роя компактных частиц (cPSO)
  • Оптимизация компактного сбора бактерий (cBFO)
  • Вероятностная инкрементальная эволюция программы (PIPE)
  • Алгоритм оценки гауссовых сетей (EGNA)
  • Многомерный нормальный алгоритм оценки с пороговой сходимостью
  • Генетический алгоритм матрицы структуры зависимостей (DSMGA)
Связанный
Ссылки
Последняя правка сделана 2021-05-19 05:02:03
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте