How can one pass arguments to a custom CrossoverFunction in ga?
조회 수: 5 (최근 30일)
이전 댓글 표시
Hello,
I need to pass 2 additional variables along with the solution and the rest of the GA-related parameters (parents, options, etc).
The previous doc page refer to "Passing Extra Parameters" to see how to pass additional arguments, and I believe I am doing it the same way it is explained there.
I define the function this way:
function xoverKids = ga_crossover(parents,options,nvars,FitnessFcn,~,thisPopulation,par1,par2)
xoverKids = []; %test
end
And I tell ga() to use it via:
options.CrossoverFcn = @(x) ga_crossover(x,par1,par2);
% (...)
x = ga(ObjectiveFunction,nvars,[],[],[],[],lb,ub,ConstraintFunction,options);
I get the error that there are too many input arguments.
Inside MATLAB's own stepGa.m, the variable options.CrossoverFcnArgs that is passed as argument to the crossover function appears empty, so I think I am not setting up the function+arguments properly in the options.
Could you help me fix this?
Thank you!
댓글 수: 0
채택된 답변
추가 답변 (0개)
참고 항목
카테고리
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!