【发布时间】:2020-05-28 22:04:09
【问题描述】:
我实现了一个遗传算法,其中适应度函数将数据的变异系数作为适应度值,因此COV越接近零越好。还会叫适应度函数吗?通常,适应度值被定义为越大值越好。
【问题讨论】:
-
只要确保您的基因组分类正确。在您的设置中,在每一代之后,我认为您想要对基因组进行排序,以便适应度最低的那个是最好的。也许,值得考虑将适应度乘以 (-1) 以不改变算法?
我实现了一个遗传算法,其中适应度函数将数据的变异系数作为适应度值,因此COV越接近零越好。还会叫适应度函数吗?通常,适应度值被定义为越大值越好。
【问题讨论】:
一个抽象而直接的答案是适应度函数是衡量您的解决方案的指标,它应该被很好地定义以将搜索空间驱动到您希望为您的问题实例实现的接近最优的解决方案。你可以在这里找到更多关于设计适应度函数的信息:A guide for fitness function design
您绝对可以使用 EA 来解决最大化或最小化问题。下图显示了一个一般的进化周期(来自一本教科书——进化计算简介)。根据 EA 周期,您需要在创建种群和创建后代之后评估您的解决方案。基本上,幸存者选择是您希望专注于最大化或最小化的过程,而您的问题是最小化。对于您的问题,您可能希望采用以下方法之一:
【讨论】: