Using linprog but it's only returning 'Optimal solution found' with no feasible solution?

4 views (last 30 days)
This is my first time using MATLAB and I'm so confused. This is my input:
f = [-4000 -5000];
A = [6 5;
4 6;
-6 -5;
-9 -5;
-1 0;
0 -1];
b = [500 400 -300 -200 0 0];
Aeq = [];
beq = [];
X = linprog(f,A,b,Aeq,beq)
Optimal solution found.
X = 2×1
62.5000 25.0000
As you can see, all I get in return is "Optimal solution found." Is there something I'm missing possibly? I feel like it should be easy, but like I said I've never used MATLAB.

Answers (1)

Bruno Luong
Bruno Luong on 5 Sep 2022
Edited: Bruno Luong on 5 Sep 2022
It looks solution is correct to me.
Note that the Aeq = [] meaning you don"t supply equality constraint, so I need to check for inquelity constraints of the solution and the constraints are satisfied as showed here:
f = [-4000 -5000];
A = [6 5;
4 6;
-6 -5;
-9 -5;
-1 0;
0 -1];
b = [500 400 -300 -200 0 0];
Aeq = [];
beq = [];
X = linprog(f,A,b,Aeq,beq)
Optimal solution found.
X = 2×1
62.5000 25.0000
A*X-b(:)
ans = 6×1
0 0 -200.0000 -487.5000 -62.5000 -25.0000
all(A*X<=b(:))
ans = logical
1

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!