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

📄 initializega.asv

📁 根据解空间的维数可以将优化问题分为一维空间优化和多元优化问题。本程序以求函数:f(x)=x+10*sin(5x)+7*cos(4x),0=<x<=9为例说明遗传算法的源程序
💻 ASV
字号:
function[pop]=initializega(num,bounds,eevalFN,eevalOps,options)
if nargin<5
      options=[le-6 1];
end
if nargin<4
      eevalOps=[];
end
if options(2)==1
      estr=['[pop(i,:)pop(i,xZomeLength)]='eevalFN'(pop(i,:),[0 eevalOps]);'];
else
      estr=['x=b2f(pop(i,:),bounds,bits);[x v]='eevalFN(x,[0 eevalOps]);
   pop(i,:)=[f2b(x,bounds,bits)v];'];
   end
   end
numVars=size(bounds,1);
rng=(bounds(:,2)-bounds(:,1))';
if options(2)==1
  xZomeLength=numVars+1;
  pop=zeros(num,xZomeLength);
  pop(:,1:numVars)=(ones(num,1)*rng).*(rand(num,numVars))+(ones(num,1)*bounds(:,1)');
else
    bits=calcbits(bounds,options(1));
    xZomeLength=sum(bits)+1;
    pop=round(rand(num,sum(bits)+1));
end
for i=1:num
     eeval(estr);
end

⌨️ 快捷键说明

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