Maximization problem in MATLAB Optimisation Toolbox

8 ビュー (過去 30 日間)
Vivek
Vivek 2023 年 2 月 2 日
コメント済み: Matt J 2023 年 2 月 5 日
Basically by default MATLAB OPtimisation Toolbox fminocon and ga algorithms minimise the objective function.
To maximise normally we use duality prinicple i.e., "multiplying objective function by -1". Will it work same here?
Becasue I have tried doing this and I couldnt get proper results. Is there any solution for this?
Thank you in advance!!

採用された回答

Matt J
Matt J 2023 年 2 月 2 日
編集済み: Matt J 2023 年 2 月 2 日
Will it work same here?
Yes. Example:
fun=@(x) -x^2; %maximize this
xmax=fmincon( @(x) -fun(x) , 1)
Local minimum found that satisfies the constraints. Optimization completed because the objective function is non-decreasing in feasible directions, to within the value of the optimality tolerance, and constraints are satisfied to within the value of the constraint tolerance.
xmax = -7.4506e-09
It worked!!
But another principal is that you need a good initial guess, when the problem is non-convex. That might be why it "doesn't work" for you.
  7 件のコメント
Vivek
Vivek 2023 年 2 月 5 日
Yes it did work properly. Constraints and Objective function is formulated properly. Everything is working fine now.
The problem was because of the variable bounds in which constraints had to be satisfied. I was expecting it to converge and give positive exit flag. But the optimum point wasn't in that region where it had to satisfy all constraints also. I got to know that all constraints can't be satisfied at same time because the final region becomes infeasible and the exit flag shows up to be negative eventhough was single constraint isn't satisfied.
Thank you @Torsten and @Matt J for the help and support.
Matt J
Matt J 2023 年 2 月 5 日
You're welcome, but please Accept-click the answer to indicate that question is resolved.

サインインしてコメントする。

その他の回答 (0 件)

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by