checksequence.m
来自「用遗传优化算法求解高次非线性方程组。代码中举例说明。」· M 代码 · 共 17 行
M
17 行
%函数(9):防止染色体超出解空间的函数
%检测染色体(序号)是否超出解空间的函数
function chromosome=checkSequence(chromosomeGroup,solutionSum)
[chromosomeSum,chromosomeLength]=size(chromosomeGroup);
decimalChromosomeSequence=bin2dec(chromosomeGroup);
for i=1:chromosomeSum %检测变异后的染色体是否超出解空间
if decimalChromosomeSequence(i)>solutionSum
chRs=round(rand(1)*solutionSum);
if chRs==0
chRs=1;
end
decimalChromosomeSequence(i)=chRs;
end
end
chromosome=dec2bin(decimalChromosomeSequence,chromosomeLength);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?