How to write selection function in genetic algorithm(Global Optimization Toolbox: ga)
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi guys.
I have some problem to use the genetic algorithm.
I want to use customized selection function, but I can only see error message: Index exceeds matrix dimensions
Here is my code below:
function parents=AGAselection(expectation, nParents, options)
% nParents= the number of parents
% A= sorted expectation
% B= expectation of nParents top parents
% GBparents= global best parents
%
expectation=(expectation(:,1));
parents=zeros(1,nParents);
%% Sorting accordance with fitness value
A=sort(expectation);
B=A(1);
%% Select Global Best
GBparents(1,1)=find(expectation==B(1,1));
%% Select Parents Randomly
RN=randperm(nParents);
parents=[GBparents RN(1:nParents-1)];
end
Please check my code and tell me what is the problem.
Thank you.
댓글 수: 0
답변 (1개)
Alan Weiss
2019년 2월 19일
I am not sure, but I am suspicious of the line
GBparents(1,1)=find(expectation==B(1,1));
What makes you think that expectation==B(1,1) has just one element?
Alan Weiss
MATLAB mathematical toolbox documentation
참고 항목
카테고리
Help Center 및 File Exchange에서 Genetic Algorithm에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!