geatpy
geatpy copied to clipboard
多染色体如果设置先验知识
您好,我有看到如果是单染色体的话 用 prophetPop = ea.Population(Encoding, Field, 1, prophetChrom) # 实例化种群对象(设置个体数为1) myAlgorithm.call_aimFunc(prophetPop) # 计算先知种群的目标函数值及约束(假如有约束) 可以实现
但是在多染色体混合编码的时候,就算 population = ea.PsyPopulation(Encoding, Field, NIND) # 实例化种群对象(此时种群还没被初始化,仅仅是完成种群对象的实例化) prophetPop = ea.PsyPopulation(Encoding, Field, 1, prophetChrom) # 实例化种群对象(设置个体数为1) myAlgorithm.call_aimFunc(prophetPop) # 计算先知种群的目标函数值及约束(假如有约束)
这样会报错
请问该如何设置?
说明调用有误,单步调试不难解决该问题。
说明调用有误,单步调试不难解决该问题。
嗯我用单编码方式,没有问题,可以成功 同样的先验知识,到混合编码,就报错了。种群已经改成Psy了。 想知道是不是我先验种群设置的问题?
嗯,是的。这些代码都看得到,很容易解决。