multi-variable optimization in matlab?

17 views (last 30 days)
Hi,
I need to minimize a function that involves two variables. The problem is that this function is not directly related to those two variables, which means i can't use the standard optimization functions like fminsearch. Many other variables are to be calculated first, which are actually functions of the first two variables, and then they're used to calculate the function. And I can't put the function and the two variables in one equation. So, what options do I have in matlab to solve this optimization problem?
Thanks

Accepted Answer

Matt J
Matt J on 6 Dec 2019
Edited: Matt J on 6 Dec 2019
Many other variables are to be calculated first, which are actually functions of the first two variables, and then they're used to calculate the function....And I can't put the function and the two variables in one equation.
None of the above are requirements of fminsearch or any other Matlab optimization routine. Go ahead and create a function with as many lines as you need. Pass this function to fminsearch, fminunc, or whatever...
  4 Comments
Matt J
Matt J on 7 Dec 2019
Edited: Matt J on 7 Dec 2019
You're welcome. One final footnote, though. fminunc and fmincon assume that your objective function is differentiable. This does not mean it must be expressed in a single of code, but it means you must be sure, on analytical grounds, that the code represents a differentiable operation. fminsearch does not require this.
Abdelrahman Taha
Abdelrahman Taha on 7 Dec 2019
Thanks for highlighting that. They're all linear equations, so both fmincon and fminsearch will be ok.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!