bs2rv.m

来自「双峰和多峰函数最大值的遗传算法求解 利用基本遗传算法的思路寻找双峰或多峰函数的」· M 代码 · 共 15 行

M
15
字号
% 此函数将二进制转换为十进制
function ans=bs2rv(Chrom,FieldD)
%二进制到十进制的转换
%chrom为二进制数组
%FieldD为边界数组 这里认为只有一个变量
[m n]=size(Chrom);
maxn=2^n;
F=(FieldD(2)-FieldD(1));
for i=1:m
    ans(i)=0;
    for j=n:-1:1
            ans(i)=ans(i)+Chrom(i,j)*2^(j-1);
    end
    ans(i)=FieldD(1)+ans(i)/maxn*F;
end

⌨️ 快捷键说明

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