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

📄 example5_1.m

📁 MATLAB7辅助控制系统设计与仿真 第5章
💻 M
字号:
function [pop] = initializega(num, bounds, eevalFN,eevalOps,options)
if nargin<5
  options=[1e-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 + -