文档介绍:,求例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(PopulationFitnessF);
Count=Count+1;
[NewPopulation,CurrentBest,EachGenMaxFitness]=Elitist(Population,PopulationFitness,MumberLength);
EachMaxFitness(Count)=EachGenMaxFitness;
MaxFitne