linprog ignores options, why?

12 views (last 30 days)
Zohar
Zohar on 12 Aug 2022
Answered: Bruno Luong on 12 Aug 2022
I'm executing:
options = optimoptions( 'linprog' );
options.Algorithm = 'interior-point';
%options.Algorithm = 'dual-simplex';
options.Display = 'iter';
options.MaxIterations = 100;
options.OptimalityTolerance = 1e-2;
options.Preprocess = 'basic';
options.MaxTime = 1;
options
x = linprog( c, A, b, [], [], [], [], options );
linprog completely ignores the options: it doesn't show any output, and it takes 2sec instea of 1. No matter the algorithm, the performance is the same.
On the subject. How do I set a warm start x0?
How do I stop the simplex prematurely after finding the 10th feassible vertex?
  6 Comments
Zohar
Zohar on 12 Aug 2022
I should have checked the output: it says mosek. Mosek put itself first in the path and overrode matlab functions with its own (linprog in this case), in the style of don't bother yourself with that. Can't say I disagree with the sentiment, but a warning or some info when I request it would have been nice.
I haven't reached yet the part of the course about the dual simplex, and I had the primal simplex in mind, which isn't supported.
Good tips Bruno, consider posting the comments as an answer.

Sign in to comment.

Accepted Answer

Bruno Luong
Bruno Luong on 12 Aug 2022
Can you run with exitflag and output
[x, fval, exitflag, output] = linprog( c, A, b, [], [], [], [], options )
and share them?
"How do I set a warm start x0?"
It is NOT possible.
"How do I stop the simplex prematurely after finding the 10th feassible vertex?"
What vertex? MATLAB propose 2 algorithms, interior points and dual-simplex.
In both cases the intermediate results are NOT primal feasible vertex. So finding feasible vertex is meanigless for both algorithm

More Answers (0)

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!