⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main1.m

📁 采用遗传算法对于加工问题的排序,使其最快.
💻 M
字号:
clear all
%machine_total=input('machine_total:');
%job_total=input('job_total:');
%pop_size=input('pop_size:');
%max_generation=input('max_generation:');
%pc=input('pc:');
%pm=input('pm:');
%T=input('T:');
machine_total=8;
job_total=9;
pop_size=10;
max_generation=500;
pc=0.8;
pm=0.4;
T=[887 447 234 159 201 555 463 456 753;799 779 567 267 478 444 123 789 21;999 999 852 483 520 120 456 630 427;666 666 140 753 145 142 789 258 520;663 25 222 420 699 578 876 741 142;333 558 558 159 875 965 543 36 534;222 886 965 25 633 412 210 985 157;114 541 412 863 222 25 123 214 896];
[a,b]=code(job_total,pop_size);
for i=1:max_generation
    [init,cc]=decode(a,machine_total,job_total,pop_size);
    [st,t]=matrix1(machine_total,job_total,pop_size,T,init);
    [P,time]=fitness1(t);
    [mintime(i,:),x]=min(time(:));
    y(i,:)=init(x,:);
    z(i,:)=cc(x,:);
    st_better(:,:,i)=st(:,:,x);
    t_better(:,:,i)=t(:,:,x);
    [total_mintime,generation]=min(mintime(:));
    best=y(generation,:);
    best_bin=z(generation,:);
    [copy_a,copy_b]=choose1(P,pop_size,a,b);
    [crossover_a,crossover_b]=crossover1(pc,copy_a,copy_b,job_total,pop_size);
    [mutation_a,mutation_b]=mutation1(pm,crossover_a,crossover_b,job_total,pop_size);
    [update_a,update_b]=update(pop_size,machine_total,job_total,T,best_bin,total_mintime,mutation_a,mutation_b);
    a=update_a;
    b=update_b;
end
total_mintime
generation
best
st_best=st_better(:,:,generation)
t_best=t_better(:,:,generation)
picturegantchart1(machine_total,job_total,total_mintime,best,st_best,t_best)
picture1(mintime,max_generation,generation)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -