我正在研究使用混合 BLX-alpha 交叉的遗传算法。
我发现了 2 种算法,在我看来它们彼此完全不同
- https://yadi.sk/i/u5nq986GuDoNm - 第8页
交叉如下
:选择 2 个父母:G1、G2
b. 从 [-alpha, 1 + alpha] 生成均匀分布的随机数 gamma,其中 alpha = 0.5
c。按如下方式生成后代:G = gamma * G1 + (1 - gamma) * G2 http://www.tomaszgwiazda.com/blendX.htm
交叉如下
:从父池中选择两个父池 X(t) 和 Y(t)湾。创建两个后代 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 - 父级之间的距离
这两种算法中哪一种是正确的?或者他们是平等的?在我的任务中,我使用的是第二种方法,因为第一种方法提供了不令人满意的结果。我关心这个问题,因为我正在研究 GA,应该使用第一个算法。
任何帮助,将不胜感激!