How to Change Initial Number of Random Points in Genetic Algorithm?
1 view (last 30 days)
Show older comments
I need to increase initial number of parameter value combinations for GA to increase likelihood to find the best solution. How to change this setting?
0 Comments
Accepted Answer
Star Strider
on 4 Feb 2022
Create an options structure using optimoptions, and define 'InitialPopulationMatrix' to the correct dimensions for your problem.
For example, I use this to start with —
PopSz = 500;
Parms = 10;
opts = optimoptions('ga', 'PopulationSize',PopSz, 'InitialPopulationMatrix',randi(1E+4,PopSz,Parms)*1E-3, 'MaxGenerations',2E3, 'FunctionTolerance',1E-8, 'PlotFcn',@gaplotbestf, 'PlotInterval',1);
where ‘PopSz’ are the number of individuals, and ‘Parms’ are the number of parameters. After that, create the initial poulation matrix however you like. (My code here is only an example.) If the optimisation proceeds too slowly, I reduce ‘PopSz’ to 100 and then re-start the optimisation.
.
6 Comments
Star Strider
on 5 Feb 2022
As always, my pleasure!
Guilty of the first (undergraduate major), not of the second. (My M.S. is in Biomedical Engineering.) A lot of my activities in this area are summarised in this search.
‘I am using GA for NRTL and UNIQUAC activity coefficient model parameters optimization.’
My apologies, however I do not understand those acronyms.
See for example Parameter Estimation for a System of Differential Equations for one approach to using ga to solve kinetics problems, in this instance a relatively small and straightforward one with an abundance of data. (I checked first to be sure that it has the latest version of the relevant code.) I can generally get ga to converge on a decent set of parameters. The problems arise when the differential equations do not appropriately describe (are the wrong model for) the data.
I have some experience in this area, so if you encounter problems, I might be able to provide solutions. I will at least give them my best effort.
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!