maybe I would like to do it with simplex method(My benchmark in Excel) or wahatever method is the best... thank you!
Optimization giving unexpected results
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi, I'm trying to optimize a function which I know the results but matlab is giving me weird results. Here's what I'm trying to do:
max: f(x)= 1815x1+379x2
subject to: -1475x1-112013x2 >= -700000
x1,,x2<=80
x1,x2>=0
How would you do it?
3 commentaires
Réponse acceptée
Yu Jiang
le 11 Août 2014
Modifié(e) : Yu Jiang
le 11 Août 2014
Hi Gimpy
Since linprog finds the minimum for the function f(x) but the problem you are trying to solve is a maximization problem, I suggest you change f = [1815;379] to f = -[1815;379]. That is to say, you solve the following problem instead
min: f(x)= - 1815x1 -379x2
subject to: -1475x1-112013x2 >= -700000
x1,,x2<=80
x1,x2>=0
There will only be a sign difference on the objective function. The optimal solutions x will be the same.
-Yu
6 commentaires
Yu Jiang
le 11 Août 2014
Hi Gimpy
The answer seems not correct, since -1475*40 -11203*80 = -955240 <=700000, meaning the first inequality constraint is not satisfied.
Also, linprog treats inequality constraints as "<=" by default, not ">=". So your A and b matrices should be A = [1475 11203] and b = 700000
-Yu
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Solver Outputs and Iterative Display dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!