1

私は、拡張トポロジのNeuronEvolutionについて読んできましたが、この小さな事が私を悩ませています。 NEATにケネス・スタンレーの論文を読んでいる間、私はここにこの数字に来た:NeuroEvolution:NEATアルゴリズムのイノベーション番号

NEAT mutation

革新番号は1,2,3,4,5,6から1,2,3,4,5に行き、最初の突然変異で6,7。

1,2,3,4,5,6から1,2,3,4,5,6,8,9になります。

なぜ私は7番をスキップし、8番にまっすぐ行くのですか?イノベーションの数字を削除することに関連するものは何も見つかりませんでした。

この2番目の図でも、親1はどのように6,7を失いましたか?第8遺伝子は親2にどのように移動しましたか?

NEAT crossover

答えて

1

革新番号は(私が短いためにINを使用します)構造の特定の部分のラベルのようなものです。従って、ニューロン番号1からニューロン番号2への接続はINを有する。 1であり、その接続を有するすべてのネットワークは、IN1とラベル付けされたこの接続を有する。新たな接続が(接続変更の追加または追加ノードの変更によって)作成されると、 INs。このような接続がすでに存在する場合は、そのINが使用されます。そうでない場合は、INカウンタが増加し、新しい接続がこの新しいINを取得し、データベースに格納されます。

上部の最初の図では、ニューロン3からニューロン5に新しい接続が追加されています。これが人口全体で初めての接続であれば、INカウンタを増やしてこの新しいINその接続のために。他の場所で既に発生している場合は、新しいものを作成する代わりにINを使用します。そのようなケースのいずれかになる可能性があり、残りの人口の様子はわかりません。接続3-> 5がIN 7を持つことが起こります。

ここで、最初の図の下部に、ニューロン3と4の間にニューロン6を追加します。 6-> 4。もう一度、 "まず、データベースにIN 3 - > 6がありますか?"という質問をします。そのINを使用している場合は、カウンタを増やします。他の接続にも同じことが言えます。この図では、これらの新しい接続がすべて新しいものであると想像することができます。つまり、上部のINカウンタは6で、新しい接続ではまだ発生していませんでした.INカウンタを増やして接続に7を割り当てました。それから底部が2つの新しい接続で起こったので、INカウンタを8と9に増やします。下部にはIN 7を持つ3 - > 5の接続がないのでIN 7はそうではありませんそこ。

2番目の図に関して、それは、相互接続INがあるときにクロスオーバーがどのように機能するかを示す単なる例です。親のはこの例のためにこのようにです。しかし、彼らは非常に簡単にこの状態になった可能性があります。前の進化の時点では、親1にはIN 1〜5があり、5は今までは最新のINであったと想像してください。次いで、集団のどこかで、ニューロン5と4との間の新しいニューロン(No.6)が追加された。すなわち、新しい接続5-> 6と6-> 4が作成された。このような接続はまだ発生していないため、INカウンタは6と7に増加しました。その後、親1は新しい接続1-> 8を追加することによって変更されました。これも新しくなったので、新しいIN 8が割り当てられました。

関連する問題