Intlinrprog (maximize) vs excel Solver (Maximize)
1 回表示 (過去 30 日間)
古いコメントを表示
Dear All,
I tried to solve a problem that the objective is to find maximize value from X1, X2, and X3 and should be in integer. So, I use the intlinprog in Matlab to find the maximize value. Since I looking for maximize, I change "f" to "-f" and the result is negative number with the result 0 X1, 4 X2, and 2 X3. Attached below :
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/718524/image.png)
In confused why the result is negative. Then, I tried to solve the problem using Excel Solver (maximize) and I got a reasonable result below :
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/718529/image.png)
The confused things is, when I set the Excel Solver to minimize and also I remove "-" in Matlab (from "-f" to "f", the result will be same between the Excel Solver and Intlinprog Matlab.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/718534/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/718539/image.png)
Anyone here can help me, how to solve this problem ? How to use maximize function in intlinprog properly?
Thank you for your kindly help.
0 件のコメント
採用された回答
Alan Weiss
2021 年 8 月 23 日
Your problem is that you set
intcon = 3;
This means that the only variable restricted to be an integer is x(3). Instead you should write the following:
f = [10 25 45];
intcon = 1:3; % All three variables are integer
A = [1 6 3;2 2 3];
b = [30 15];
Aeq = [0 5 2];
beq = 20;
lb = [0 0 0];
x = intlinprog(-f,intcon,A,b,Aeq,beq,lb,[])
Alan Weiss
MATLAB mathematical toolbox documentation
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!