Problem structure with LSQNONLIN set in optimoptions object still uses FMINCON

3 次查看(过去 30 天)
I am trying to solve an optimization problem involving orthogonal matrices as the "optimvar" objects, and I have created an "optimoptions" object with lsqnonlin passed as the first argument, and have selected the levenberg-marquardt algorithm. Each time I call "solve" with the corresponding inputs, I get the following warning:
"Warning: You have passed LSQNONLIN options to FMINCON. FMINCON will use the common options and ignore the LSQNONLIN options that do not apply. To avoid this warning, convert the LSQNONLIN options using OPTIMOPTIONS."
This seems strange to me - I am not trying to pass lsqnonlin options to fmincon - I'm trying to pass lsqnonlin options to lsqnonlin. Does the lsqnonlin solver use fmincon, or is this indicative of some other major mistake in my approach? Thanks in advance!

采纳的回答

Matt J
Matt J 2021-6-10
I don't think you can use the optimvar framework to launch lsqnonlin, because lsqnonlin does not take a scalar objective. You will probably have to call lsqnonlin directly.
  3 个评论
Matt J
Matt J 2021-6-11
I wasn't aware that the optimvar framework wasn't intended to work with nonscalar objectives
I don't think it is, but that's unverified. That's why I asked in my comment above what happens when you don't try to pass in any optimoptions. I expect you might get an error about the objective being non-scalar.
Microtron
Microtron 2021-6-11
I think you are correct, but unfortunately I don't think I'm any closer to a solution; I've started trying lsqnonlin directly but I'm still having issues. I'll close this for now, but likely open another question with a more targeted question. Thanks for your feedback!

请先登录,再进行评论。

更多回答(0 个)

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by