Hi, I'm trying to turning a genetic algorithm for the following function :
function L=fonction(x1,x2,x3)L=abs(118.04-(x1.*218.46+x2.*31.09+x3.*125.61));end
but when i wrote the following command :
[x1,x2,x3,Fval,exitFlag,Output] = ga(@fonction,3);fprintf('The number of generations was : %d\n', Output.generations);fprintf('The number of function evaluations was : %d\n', Output.funccount);fprintf('The best function value found was : %g\n', Fval);
matlab return this error :
Error using fonction (line 2)Not enough input arguments.Error in createAnonymousFcn>@(x)fcn(x,FcnArgs{:}) (line 11)fcn_handle = @(x) fcn(x,FcnArgs{:});Error in fcnvectorizer (line 14) y(i,:) = feval(fun,(pop(i,:)));Error in makeState (line 47) Score = fcnvectorizer(state.Population(initScoreProvided+1:end,:),FitnessFcn,1,options.SerialUserFcn);Error in gaunc (line 41)state = makeState(GenomeLength,FitnessFcn,Iterate,output.problemtype,options);Error in ga (line 351) [x,fval,exitFlag,output,population,scores] = gaunc(FitnessFcn,nvars, ...Caused by: Failure in user-supplied fitness function evaluation. GA cannot continue.
Please help
Best Answer