Info
此问题已关闭。 请重新打开它进行编辑或回答。
How to solve the optimization using Matlab
1 次查看(过去 30 天)
显示 更早的评论
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
2016-1-22
Since Z is unbounded, the maximum X-value is Infinity (the problem is unbounded).
Best wishes
Torsten.
回答(1 个)
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.
0 个评论
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!