custom selection functions for genetic algorithm

4 次查看(过去 30 天)
I am brand new to genetic algorithms. I am trying to learn by reproducing the results I found in a paper. I am getting hung up on the selection method. The paper uses normalized geometric selection. It looks like this in not one of the canned methods available and that I need to write a custom function. I have an equation and most of the parameters that I need. The onlything I think I need is the rank of the individual. My big issue is that I am not clear on how to pass this to my function. I took a stab at it with the below function but this failed. I dont know the syntax for passing parameters to and from my function for this instance. I appreciate any help. I suspect the solution is very simple but I am really confused.
function [S] = Selection(r)
p = 60; % population size
q = 0.05; % probablity of selection
R = r; % rank of individual
q = p/(1-(1-q)^p);
S = q*(1-q)^(R-1); % normalized geometric equation
  2 个评论
darova
darova 2020-4-10
Too much text. Im not that good at english. Do you have a question?
Justin
Justin 2020-4-10
Need help with syntax for custon selection function in genatic algorithm. I need to get parameter for rank into the function. I also need to output information in correct form.

请先登录,再进行评论。

采纳的回答

Ameer Hamza
Ameer Hamza 2020-4-10
The selection function for ga must have the following signature
function parents = myfun(expectation, nParents, options)
The explanation of the input and output variables are given here: https://www.mathworks.com/help/gads/genetic-algorithm-options.html#f6593. Note that the output variables 'parents' must have the dimension of 1xnParents. To see an example of selection function, check the code of one of the MATLAB's built-in selection function
edit selectionremainder
  8 个评论
Justin
Justin 2020-4-10
This is exactly what I want. And your suggestion seems to be working. The ga came up with values very close to what I was trying reproduce in the paper. Thank you so much for your help.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Genetic Algorithm 的更多信息

产品


版本

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by