修复了一个evolve的bug

Signed-off-by: dmy@lab <dmy@lab.lab>
This commit is contained in:
dmy@lab 2015-02-02 17:29:39 +08:00
parent 015d4e2a89
commit 5f2bf4beef
2 changed files with 6 additions and 6 deletions

View File

@ -3,14 +3,14 @@ function [ selectedIndex ] = evolute( selectedIndex,randSNCount,snSolar )
changeN=1;% changeN=1;%
changedIndex=1:96; changedIndex=1:96;
changedIndex=changedIndex( round(1+(96-1)*rand(changeN,1)) ); changedIndex=changedIndex( round(1+(96-1)*rand(changeN,1)) );
for c=1:length(changedIndex) % for c=1:length(changedIndex)
% selectedIndex(:,changedIndex)=round(1+(16-1)*rand(randSNCount,changeN));% % selectedIndex(:,changedIndex)=round(1+(16-1)*rand(randSNCount,changeN));%
if abs(snSolar(16,c)-(-100))<1e-5 if any(abs(snSolar(16,changedIndex)-(-100))<1e-5)
selectedIndex(:,c)=round(1+(4-1)*rand(randSNCount,1));% selectedIndex(:,changedIndex)=round(1+(4-1)*rand(randSNCount,length(changedIndex)));%
else else
selectedIndex(:,c)=round(1+(16-1)*rand(randSNCount,1));% selectedIndex(:,changedIndex)=round(1+(16-1)*rand(randSNCount,length(changedIndex)));%
end end
end % end
% [ selectedWind,selectedSolar,candidateP ] = generateCandidate( snWind,snSolar,snP,randSNCount,selectedIndex ); % [ selectedWind,selectedSolar,candidateP ] = generateCandidate( snWind,snSolar,snP,randSNCount,selectedIndex );
end end

2
main.m
View File

@ -22,7 +22,7 @@ end
bestFitness=0; bestFitness=0;
bestIndex=0; bestIndex=0;
for LOOP=1:500 for LOOP=1:10
fprintf('%d\n',LOOP); fprintf('%d\n',LOOP);
fprintf('%f\n',bestFitness); fprintf('%f\n',bestFitness);
for I=1:gaCount for I=1:gaCount