Добавление узлов/соединений к структуре в алгоритме NEAT

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

Допустим, есть 2 существа, и одно из них мутирует и добавляет связь между двумя существующими узлами. У этого существа теперь больше генов, чем у другого, верно?

Так как же мы можем сделать пересечение между ними?

Или добавление связи между узлами означает, что между ними уже была связь, но вес этой связи был равен 0, поэтому он не имел никакого эффекта, а мутация изменила его, позволив ему иметь какой-то эффект?

Это было в глубине моего сознания в течение довольно долгого времени.

Любая помощь приветствуется.

Спасибо

https://towardsdatascience.com/neat-an-awesome-approach-to-neuroevolution-3eca5cc7930f


person Ahmet Aslantaş    schedule 01.09.2019    source источник


Ответы (1)


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

Ключевая идея NEAT состоит в том, чтобы тщательно маркировать каждую новую структуру своим собственным идентификатором. Как правило, только узлы имеют уникальные идентификаторы, а соединения определяются узлами, которые они связывают друг с другом. Таким образом, кроссовер узнает, какие части генома совместимы, а какие нет.

Представьте себе эти два генома:

Геном A:
Узлы: 1, 2, 3, 5, 7
Связи: 1-2, 1-3, 2-5, 5-7, 3-7

Геном B:
Узлы: 1, 2, 3, 7
Соединения: 1-2, 1-7, 2-3, 3-7

Мы знаем, что узлы 1, 2, 3 и 7 являются общими, поэтому пересечение может происходить напрямую (хотя очень часто узлы не имеют параметров, поэтому этот шаг на самом деле ничего не даст). Узел 5 уникален для генома А и не будет участвовать в кроссовере.

Соединения 1-2 и 3-7 являются общими, остальные - нет, поэтому только 1-2 и 3-7 будут иметь место непосредственно в кроссовере (обычно взвешивание одного родителя случайным образом для каждого соединения).

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

person Pablo    schedule 18.10.2019