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

📄 tspmutat.m

📁 其中提到遺傳學的程式碼與應用提供給次淚相向的研究者參考下載
💻 M
字号:
% tspmutat.m
% Matlab function to mutate the k parents to generate k offsprings
%

function Poffspring = tspmutat(P)
[N k] = size(P);

for i = 1:k
    % Get the start_pt and sect_length
    start_pt    = ceil(rand*N);
    sect_length = ceil(rand*(N/2-1));
    
    % Generate the start_pt and end_pt
    if(start_pt + sect_length > N)
        end_pt   = start_pt;
        start_pt = start_pt - sect_length + 1;
    elseif(start_pt - sect_length < 1)
        end_pt = start_pt + sect_length - 1;
    else
        if(rand > 0.5)
            end_pt   = start_pt + (sect_length - 1);
        else
            end_pt   = start_pt;
            start_pt = start_pt - (sect_length - 1);
        end
    end
    
    Poffspring(:,i) = P([1:(start_pt-1) (end_pt:-1:start_pt) (end_pt+1:N)],i);
end

⌨️ 快捷键说明

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