I just installed MATLAB R2013a. (Specifically, I uninstalled it (including user preferences), cleaned out the directory, then reinstalled from the mathworks.com web site. There are no other MATLAB versions on this computer.) When I tried to run optimoptions, it gave me an error about attempting to use a script:
>> op = optimoptions('lsqnonlin')Attempt to execute SCRIPT optimoptions as a function:C:\Program Files\MATLAB\R2013a\toolbox\shared\optimlib\ja\optimoptions.m
Checking what optimoptions is getting executed, it says this:
>> which optimoptions -allC:\Program Files\MATLAB\R2013a\toolbox\shared\optimlib\ja\optimoptions.mC:\Program Files\MATLAB\R2013a\toolbox\optim\optim\optimoptions.m % Shadowed
The first one of these is indeed a script, so I tried moving …\toolbox\optim\optim\ above …\toolbox\shared\optimlib (and …optimlib\ja) in the path and restarting MATLAB. Then I got a different error:
>> which optimoptionsC:\Program Files\MATLAB\R2013a\toolbox\optim\optim\optimoptions.m>> op = optimoptions('lsqnonlin')Error using optimoptions (line 114)Undefined variable "optim" or class "optim.options.createSolverOptions".
It doesn't matter what arg I pass to optimoptions, it gives the same error with 'lsqlin' or 'foobar'. I removed all my directories (i.e., non-MATLAB-installed directories) from the path and restarted MATLAB, with no effect.
For what it's worth, if I do a search in Windows for createSolverOptions.m, one file shows up: C:\Program Files\MATLAB\R2013a\toolbox\optim\+optim\+options\createSolverOptions.m .
Help! Does anyone have any experience with this issue?
————————————
Relevant versions in use:
MATLAB Version: 8.1.0.604 (R2013a)Optimization Toolbox Version 6.3 (R2013a)Windows 7 Professional 64-bit
Best Answer