作者kasim0814 ()
看板MATLAB
標題[問題] 基因演算法(周鵬程著作中)的適應函數計算部分
時間Wed May 24 15:46:13 2006
請各位看過此書的大大幫個忙,謝謝大家!(遺傳演算法原理與應用-周鵬程著)
function [fitness,popu_real,popu]=GA_evalpopu(popu,bit_n,range,fcn)
pop_n=size(popu,1);
var_n=size(range,2);
fitness=zeros(pop_n,1);
popu_real=zeros(pop_n,var_n);
for count=1:pop_n,
[fitness(count),popu_real(count,:)]=...
GA_evaleach(popu(count,:),bit_n,range,fcn);
end
[fitness,YY]=sort(fitness);
popu_real=popu_real(YY,:);
popu=popu(YY,:);
請問最後的三行程式是什麼意思?(以上程式於書中page.2-17)
另外,
var_n=length(chromosome)/bit_n;
input=zeros(1,var_n);
for i=1:var_n,
chromosome_real(i)=GA_bit2num(chromosome...
((i-1)*bit_n+1:i*bit_n),...
range(:,i));
end;
PI=feval(fcn,chromosome_real);
請問for loop中GA_bit2num裡chromosome((i-1)*bit_n+1:i*bit_n)為什麼會這樣子表示?
之前的內容中GA_bit2num(bit,range),為什麼上述的式子會和bit相同?
還有最後一行的部分,PI=feval(fcn,chromosome_real),註解只寫call function實在是
不了解(以上程式於書中page.2-19)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.192.28