ブレンド BLX-α クロスオーバーを使用する遺伝的アルゴリズムに取り組んでいます。
2 つのアルゴリズムを見つけましたが、これらは互いにかなり異なっているように思われます
- https://yadi.sk/i/u5nq986GuDoNm - 8 ページの
クロスオーバーは次
のように行われます。2 つの親を選択: G1、G2
b. [-alpha, 1 + alpha] から均一に分布した乱数ガンマを生成します。ここで、alpha = 0.5
c. 次のように子孫を生成します: G = ガンマ * G1 + (1 - ガンマ) * G2 http://www.tomaszgwiazda.com/blendX.htm
クロスオーバーは次
のように行われます。親プールから 2 つの親 X(t) と Y(t) を選択するb. 次のように、2 つの子 X(t+1) と Y(t+1) を作成します。
c. i = 1 から n の場合
d. di=|xi(t)-yi(t)|
e. 区間から一様乱数実数uを選ぶ
f. xi(t+1)=u
g. 区間から一様乱数実数uを選ぶ
h. yi(t+1)=u
私。終了する
a – 正の実数パラメータ
xi, yi – 親の i 番目のコンポーネント
di – 距離 betweet 親コンポーネント
次の 2 つのアルゴリズムのうち、正しいのはどれですか? それとも等しいですか?私のタスクでは、最初の方法では満足のいく結果が得られないため、2 番目の方法を使用しています。私は最初のアルゴリズムが使用されることになっている GA に取り組んでいるので、この質問に関心がありました。
どんな助けでも大歓迎です!