MATLAB doesn't recognize the function optimoptions

I'm getting an error at the following line:
options = optimoptions('ga','PopulationSize',10,'MaxGenerations',10);
The following message exemplifies the problem.
I'm using the version 9.10 (R2021a) of MATLAB and the version 4.5 (R2021a) of the Global Optimization Toolbox
The photo is just an exemple, I must say that the version written in lowercase also doesn't work
Any suggestions will be appreciated

Answers (2)

MATLAB is case-sensitive.
Try this —
options = optimoptions('ga')
optionbs =
ga options: Set properties: No options set. Default properties: ConstraintTolerance: 1.0000e-03 CreationFcn: [] CrossoverFcn: [] CrossoverFraction: 0.8000 Display: 'final' EliteCount: '0.05*PopulationSize' FitnessLimit: -Inf FitnessScalingFcn: @fitscalingrank FunctionTolerance: 1.0000e-06 HybridFcn: [] InitialPopulationMatrix: [] InitialPopulationRange: [] InitialScoresMatrix: [] MaxGenerations: '100*numberOfVariables' MaxStallGenerations: 50 MaxStallTime: Inf MaxTime: Inf MutationFcn: [] NonlinearConstraintAlgorithm: 'auglag' OutputFcn: [] PlotFcn: [] PopulationSize: '50 when numberOfVariables <= 5, else 200' PopulationType: 'doubleVector' SelectionFcn: [] UseParallel: 0 UseVectorized: 0
.
.

7 Comments

Thanks for your response, but it still doesn't work
My pleasure!
Check the documentation for your MATLAB release (R2021a). The currently available online documentation is for R2024b. I am not certain which one you are using as a reference, and while both have worked over the years, there have also been changes over the years when the character vector ('ga') has worked and the other (@ga) has not, and the reverse.
The other possibility is to use the function handle in your optimoptions call, for example —
options = optimoptions(@ga)
options =
ga options: Set properties: No options set. Default properties: ConstraintTolerance: 1.0000e-03 CreationFcn: [] CrossoverFcn: [] CrossoverFraction: 0.8000 Display: 'final' EliteCount: '0.05*PopulationSize' FitnessLimit: -Inf FitnessScalingFcn: @fitscalingrank FunctionTolerance: 1.0000e-06 HybridFcn: [] InitialPopulationMatrix: [] InitialPopulationRange: [] InitialScoresMatrix: [] MaxGenerations: '100*numberOfVariables' MaxStallGenerations: 50 MaxStallTime: Inf MaxTime: Inf MutationFcn: [] NonlinearConstraintAlgorithm: 'auglag' OutputFcn: [] PlotFcn: [] PopulationSize: '50 when numberOfVariables <= 5, else 200' PopulationType: 'doubleVector' SelectionFcn: [] UseParallel: 0 UseVectorized: 0
Both work in R2024b.
.
What is the error message when using optimoptions('ga') ?
If the message is about unrecognized solver, then the problem is that the Global Optimization Toolbox is not installed.

Walter, the error message that I receive is the same shown at the photo, Unrecognized function or variable 'optimoptions'.

Do you have the Optimization Toolbox and the Global Optimizaztion Toolbox licensed and installed?
If you do (since it is still not working) run these from your Command Window or a scriptt:
restoredefaultpath
rehash toolboxcache
and try it again. If it is still not working after that, Contact Support.
.
If the message is about optimoptions not being recognized, then you do not have the Optimization Toolbox installed, and certainly not the Global Optimization Toolbox.

Sign in to comment.

If really necessary you could use the older gaoptimset (which has not been recommended since R2018b)

Categories

Products

Release

R2021a

Asked:

on 26 Jan 2025

Commented:

on 26 Jan 2025

Community Treasure Hunt

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

Start Hunting!