Setting lower and upper bounds in 'ga' algorithm.
12 views (last 30 days)
Show older comments
I am trying to find the global minimum of the Ackley function using a genetic algorithm 'ga'. My code works fine until i try to add lower and upper bounds then I get errors. Please help me add the bounds to my code.
function y = myFitness(x)
y = -20.*exp(-0.2.*sqrt(0.5.*(x(1).^2+ x(2).^2))) - exp(0.5.*(cos(2.*pi.*x(1)))+(cos(2.*pi.*x(2))))+exp(1)+20;
end
clc
FitFcn = @myFitness;
nvars = 2;
lb = [-5 5];
ub = [5 5];
[x, fval] = ga(FitFcn, nvars)
0 Comments
Accepted Answer
Ameer Hamza
on 10 Oct 2020
FitFcn = @myFitness;
nvars = 2;
lb = [-5 5];
ub = [5 5];
[x, fval] = ga(FitFcn, nvars, [], [], [], [], lb, ub)
3 Comments
Learner123
on 27 Apr 2021
Hi,
I have a similar issue. When I set lb and ub
I am getting an error.
Error using ga
Too many input arguments.
Any help is greatly appreciated. Thanks in advance
More Answers (0)
See Also
Categories
Find more on Genetic Algorithm in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!