在 jenetics 库中,Mutator 类的 alter() 方法中给出了以下代码:
最终双 p = pow(_probability, 1.0/3.0);
谁能解释计算这个新的突变概率的目的?它有什么好处?我们如何使用这个类来实现 One-Position 或 Point Mutation?
在 jenetics 库中,Mutator 类的 alter() 方法中给出了以下代码:
最终双 p = pow(_probability, 1.0/3.0);
谁能解释计算这个新的突变概率的目的?它有什么好处?我们如何使用这个类来实现 One-Position 或 Point Mutation?
原因是人口 -> 基因型 -> 染色体 -> 基因的层次结构。由于给定的概率是单个基因的突变概率,因此您首先必须从总体中选择一个基因型。然后从选定的基因型中选择一个染色体。最后,从染色体中选择基因。单个选择步骤的选择概率设置为 pow(p, 1/3),这导致所需的基因突变概率为 p。
该机制也在Jenetics 手册第 13 页的“Mutator”段落中进行了描述。