Info

此问题已关闭。 请重新打开它进行编辑或回答。

How to solve the optimization using Matlab

1 次查看(过去 30 天)
Sobin cc
Sobin cc 2016-1-22
关闭: MATLAB Answer Bot 2021-8-20
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 个评论
Torsten
Torsten 2016-1-22
Since Z is unbounded, the maximum X-value is Infinity (the problem is unbounded).
Best wishes
Torsten.
Sobin cc
Sobin cc 2016-1-22
if we bound x to say 500. how this can be written using fmincon?

回答(1 个)

John D'Errico
John D'Errico 2016-1-22
编辑:John D'Errico 2016-1-22
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!

Translated by