📄 main.m
字号:
clc;clear;
figure(1);
Generation=0;%Initial_Group初始群体,Generation代数
Generation_Initial=Generation; Generation_End=0;
End=12;%参数的总数
G_Sample_Sum_Dimension=3;%从End个参数中取Sample_Sum_Dimension个不同的参数作为一个组合
G_Sample_Sum=100;%形成的组合总数(群体中个体的总数)
BY_Probability_Set=100;%设置变异率为BY_Probability_Set%
[Initial_Group,M]=wh_Creat_Group_Xin(End,G_Sample_Sum,G_Sample_Sum_Dimension);
while~( M<round(G_Sample_Sum/10))
[Initial_Group,M]=wh_Creat_Group_Xin(End,G_Sample_Sum,G_Sample_Sum_Dimension);
end%保持个体的重复率<10%
[Max,Excellent_Sample,Initial_Group_Excellent_position]=SAA(G_Sample_Sum_Dimension,Initial_Group,G_Sample_Sum);
while ~(Generation>Generation_End)
Generation=Generation+1;
% [Max,Excellent_Sample,Initial_Group_Excellent_position]=SAA(G_Sample_Sum_Dimension,Initial_Group,G_Sample_Sum);
Initial_Group=wh_ZJ(Initial_Group,G_Sample_Sum,G_Sample_Sum_Dimension);%杂交
%--------------------------------------------------------------- %变异
[y,p]=wh_BY_Know_Site(Initial_Group_Excellent_position,G_Sample_Sum_Dimension,End,Initial_Group);Initial_Group(p,:)=y;%让上次取得最大值的个体变异
BY_Probability=round(G_Sample_Sum*BY_Probability_Set/100);
if (BY_Probability<1)
BY_Probability=1;
end
for by_Probability=1:BY_Probability
[y,p]=wh_BY(G_Sample_Sum,G_Sample_Sum_Dimension,End,Initial_Group);Initial_Group(p,:)=y;
end%for by_Probability=1:BY_Probability
%--------------------------------------------------------------结束
[Max,Excellent_Sample,Initial_Group_Excellent_position]=SAA(G_Sample_Sum_Dimension,Initial_Group,G_Sample_Sum);
end%while ~(Generation>100)
figure(1);
title '处理结束';
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -