1 / 4
文档名称:

数学实验七: 遗传算法 实验报告.doc

格式:doc   大小:52KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数学实验七: 遗传算法 实验报告.doc

上传人:mh900965 2017/6/22 文件大小:52 KB

下载得到文件列表

数学实验七: 遗传算法 实验报告.doc

文档介绍

文档介绍:,求例1的在第二种终止条件下的最优解.
提示:一个可能的函数调用形式以及相应的结果为:
[Count,Result,BestMember]=ic2(22,6,'-x*x+2*x+',-1,2,-2,,)
% 附录1
function [Count,Result,BestMember]=ic2(MumberLength,MemberNumber,FunctionFitness,MinX,MaxX,Fmin,MutationProbability,Precision)
Population=PopulationInitialize(MumberLength,MemberNumber);
Error=Precision+1;
global Count;
global CurrentBest;
Count=1;
PopulationCode=Population;
PopulationFitness=Fitness(PopulationCode,FunctionFitness,MinX,MaxX,MumberLength); %用于计算群体中每一个染色体的目标函数值
PopulationFitnessF=FitnessF(PopulationFitness,Fmin); %用于计算每个染色体的适应函数值
PopulationProbability=Probability(PopulationFitnessF); %用于计算群体中每个染色体的入选概率
[Population,CurrentBest,EachGenMaxFitness]=Elitist(PopulationCode,PopulationFitness,MumberLength); %用到最佳个体保存方法(“优胜劣汰”思想)
EachMaxFitness(Count)=EachGenMaxFitness;
MaxFitness(Count)=CurrentBest(length(CurrentBest));

while Error>Precision
NewPopulation=Select(Population,PopulationProbability,MemberNumber);
Population=NewPopulation;
NewPopulation=Crossing(Population,FunctionFitness,MinX,MaxX,MumberLength);
Population=NewPopulation;
NewPopulation=Mutation(Population,MutationProbability);
Population=NewPopulation;
PopulationFitness=Fitness(Population,FunctionFitness,MinX,MaxX,MumberLength);
PopulationFitnessF=FitnessF(PopulationFitness,Fmin);
PopulationProbability=Probability(Populatio