How to constrain the Genetic Algorithm so that the variables are in the form of an n by m matrix
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
My cost function will only accept a 25 * 51 matrix as an input (1275 variables) and then it returns a single number. How will I set up the GA to minimise this cost function?
Thanks!
0 commentaires
Réponse acceptée
Matt J
le 15 Mai 2014
Modifié(e) : Matt J
le 15 Mai 2014
Insert the following as the first line in your cost function
x=reshape(x,25,51);
Now it doesn't matter what shape the original input x, is.
3 commentaires
Matt J
le 15 Mai 2014
Modifié(e) : Matt J
le 15 Mai 2014
So the problem is that the current cost function yourfunc(x) doesn't know the matrix dimensions in advance? You will have to wrap it in another function that does know the architecture and which reshapes the input accordingly, e.g.,
fitnessFunc=@(x) yourfunc(reshape(x,[M,N]))
Surely, you have something outside of yourfunc() that does know the architecture. How else does the matrix get into its intended shape in the first place?
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Genetic Algorithm dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!