我正在使用遗传算法来解决优化问题。但是,我需要一个能够创建超出当前解决方案范围之外的新解决方案的配合过程。在《实用遗传算法》一书中,我已经看到:
p_new = B *(p_1-p_2)+ p_1
其中p_new是新的解决方案,而p_1和p_2是两个不同的当前解决方案。 B是[0,1]
之间的随机数但是问题是,这会导致负值,而我的染色体不能是负值。我考虑了以下问题:
p_new = A * p_1 + B * p_2
其中A和B是[0,1]之间的随机数
以前曾经使用过这种方法吗?有任何意见是否可行?
我的另一个想法是使用实用遗传学中的一个并取绝对值,即:
p_new = abs(B *(p_1-p_2)+ p_1)