Info

This question is closed. Reopen it to edit or answer.

How to solve the optimization using Matlab

2 views (last 30 days)
Sobin cc
Sobin cc on 22 Jan 2016
Closed: MATLAB Answer Bot on 20 Aug 2021
How can i solve the following optimization using Matlab optimization tool box?..should i choose fmincon for this?
maximize X = a Y + b Z, where 0<a<=1, 0<b<=1 0<x<=1 and y>0
  4 Comments
Torsten
Torsten on 22 Jan 2016
Since Z is unbounded, the maximum X-value is Infinity (the problem is unbounded).
Best wishes
Torsten.
Sobin cc
Sobin cc on 22 Jan 2016
if we bound x to say 500. how this can be written using fmincon?

Answers (1)

John D'Errico
John D'Errico on 22 Jan 2016
Edited: John D'Errico on 22 Jan 2016
You don't understand. IT IS UNBOUNDED. Set Y to any value you wish. as long as b is positive, then let Z approach infinity. X will be made arbitrarily large.
If, as in a comment I see, you decide to give a limit to x as a maximum... (I can only assume that you meant X, not x since there is no x in the problem.) Still, use of fmincon is a waste of time. Just use grade school algebra and some common sense.
Pick ANY values for a, b, and Y. ANY VALUES. Then we have
X = 500 = a*Y + b*Z
So just solve for Z, as a function of a,b,Y.
Z = (500 - a*Y)/b
Since a and Y are bounded and both quite small, both bounded between 0 and 1, Z will NEVER be negative in that result. NEVER.
There is absolutely no reason to bother using fmincon here. Never forget to use common sense, replacing it with a computational algorithm. If you do, you will too often get garbage for results, and you won't know when to trust those results.

Community Treasure Hunt

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

Start Hunting!