Would somebody help me please in this question. I'm new in Matlab... And it's a bit hard for me to understand how to create and use genetic algorithm in Matlab. If anybody could help to write some very simple code for searching minimum/maximum of specified function. I read that the gatool should be used for that... but I can't understand the examples of Matlab help network. I'm doing the next steps:
In text editor I'm typing the next:
function y= parabola(x) y=x*x; end
Then I'm launching the
GATOOL
and specifying this function like@parabola
- Setting the number of variables (equals 2)
Initial range = [-10;10]
.The other parameters are set as Default
When I press
Start
Button I see a result:Error in fitnessfcn: Input argument "x" is undefined.
The main problem is that you don't understand how the toolbox works. You should refer to the documentation to get the whole idea.
So, the fitness function should be a function handle and should return a scalar.
First, your function is not well defined. If you want to define an anonymous function you should
The same can be achieved with the GUI of GA. In case you want to define your function in an
m
file you should have something like:parabola.m
And you define the handle like
fh = @parabola
. And in the code above you replaceparabola
for the new handle,fh
.I hope this help you get started.