www.gusucode.com > 溷沌优化工具箱 - chaoshcacs源码程序 > initColony.m
function [ants,optIndex,avg,sigma] = initColony(bounds,antnum,sigmaOption) ant = struct('pos',[],'fitness',0); avg=0; for i = 1:antnum ant.pos =(bounds(:,1) + rand(size(bounds,1),1).*(bounds(:,2)-bounds(:,1)))'; ant.fitness = evalCandidate(ant.pos); avg=avg+ant.fitness; ants(i) = ant; if i==1 optIndex = 1; elseif ants(optIndex).fitness<ants(i).fitness optIndex = i; end end avg=avg/antnum; % sigma = calcuSigma(ants,ants(optIndex).pos,sigmaOption); if sigmaOption sigma =(bounds(:,2) - bounds(:,1))'; else sigma =3 * max(bounds(:,2) - bounds(:,1)); end