首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么GA收敛曲线继续作为两条平行线?

为什么GA收敛曲线继续作为两条平行线?
EN

Data Science用户
提问于 2019-11-24 12:44:31
回答 1查看 120关注 0票数 1

我正在处理一个优化问题,并使用GA算法(在MATLAB中,ga函数中)。

正如你所知道的,MATLAB用两条曲线绘制GA结果,一条表示最佳值,另一条表示平均值,当这两条曲线互相接触时,均值算法已经收敛。

基于我的原因,这两条曲线不能以两条平行线的形式继续下去,直到最大代数结束,最后是一次过早的收敛,是什么原因造成的呢?

我用其他参数值进行了测试,但结果是相同的。在预处理方面,我使用了缺失值、归一化、平滑和测试数据集属于UCI.

GA参数:

代码语言:javascript
代码运行次数:0
运行
复制
MutationFcn      : @mutationadaptfeasible: 0.03
CrossoverFcn     : @crossoverheuristic : 1.2
maxGenerations   : 200;
populationSize   : 180;
Chromosome length: 33
Test Instances   : 71
EN

回答 1

Data Science用户

回答已采纳

发布于 2019-11-25 00:18:54

正如你所知道的,MATLAB用两条曲线绘制GA结果,一条表示最佳值,另一条表示平均值,当这两条曲线互相接触时,均值算法已经收敛。

更准确地说,当这两条曲线相互接触时,这意味着人口中的所有个体表现完全相同,因为这是实现最佳和平均相等的唯一途径(通常情况下,这是因为所有个体都是相同的)。这种情况只能通过偶然和/或如果突变概率很小才能发生,因为一旦有一个有变异的个体,这个个体的表现就不太可能达到最好的水平。

对我来说,在像你这样的情节中,成功的收敛达到了60-70次迭代。残差是由于随机突变造成的。

票数 2
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/63684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档