upgate.m

来自「量子遗传算法用于图象处理 量子遗传算法用于图象处理」· M 代码 · 共 22 行

M
22
字号
function [pop]=upgate(pop,num_of_singles,num_of_chrom,num_of_genes,best_index,iteration)
maxt=1;
single_best=pop(:,(best_index-1)*20+1:best_index*20);
for i=1:num_of_singles
    if i==best_index
        continue;
    end
    single_curr=pop(:,(i-1)*20+1:i*20);
    for j=1:num_of_chrom*num_of_genes
        gene_best=single_best(:,j);
        gene_curr=single_curr(:,j);
        alpha_best=gene_best(1);
        beta_best=gene_best(2);
        alpha_curr=gene_curr(1);
        beta_curr=gene_curr(2);
        theta=10*exp(-iteration/maxt)*f(alpha_best,beta_best,alpha_curr,beta_curr);
        gate=[cos(theta) -sin(theta);sin(theta) cos(theta)];
        gene_curr=gate*gene_curr;
        single_curr(:,j)=gene_curr;
    end
    pop(:,(i-1)*20+1:i*20)=single_curr;
end

⌨️ 快捷键说明

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