VB.NET で対称 TSP の遺伝的アルゴリズムに取り組んでいます。選択手順を実行する正しい方法を知りたいです。少なくとも 2 つの異なる可能性があるようです。
1)
-create a "reproduction pool" of size R by using SELECTION(pop) function
-do offspring creation cycle
-randomly (uniformly) select two parents from that pool for each offspring
that needs to be created in each iteration
2)
-do offspring creation cycle
-use modified SELECTION(pop) function that will return two different parents from pop
-perform crossover to produce a child
おまけの質問: 2 つの親を選択した後、2 つの異なる子孫を生成することができます (交叉演算子が mot 可換の場合): CROSS(p1, p2) と CROSS(p2, p1)。両方の子をすぐに挿入するか、1 つずつ生成する必要がありますか? これは違いを生むでしょうか?
母集団のばらつきが大きくなると思うので、現在は1つずつ作成しています。