No feasible solution found when using quadprog
Mostra commenti meno recenti
Hello,
I am dealing with a large-scale convex quadratic programming with onlu inequality constraint.
In particular, H is a 1516-square matrix and A has dimension of 3038x1516.
I have used the code:
options = optimoptions('quadprog','interior-point-convex');
[x,fval,exitflag,output,lambda] = quadprog(H,f,A,b,[],[],[],[],[],options);
but the output is:
No feasible solution found.
quadprog stopped because it was unable to find a point that satisfies
the constraints within the default value of the constraint tolerance.
I have tried to normalize the matrix A and the vector b (as suggested in a old thread) but I got the same output. Then, using the suggestions of Converged to an Infeasible Point at https://it.mathworks.com/help/optim/ug/when-the-solver-fails.html#br44i73, I have tried to let Matlab find a feasible solution using LinProg and settingthe objective function to zero. Even in this way the solver cannot find a fesible solution. But, the vector of all zeros and of all ones are two fesible points.
Any suggestions?
Thank you a lot-
8 Commenti
Bruno Luong
il 6 Apr 2021
"But, the vector of all zeros and of all ones are two fesible points. "
What is you provide those vectors as x0?
Elisabetta Biondi
il 6 Apr 2021
Bruno Luong
il 6 Apr 2021
If you said "all zeros and of all ones are two fesible points" then if you provide them as starting point, quadprog should never "stopped because it was unable to find a point that satisfies the constraints", but of course you have to use whatever algorithm that accepts starting point.
Unless if you make a mistake in setting up your problem. It's just a way to make sure there is no problem of your input arguments passing to quadprog.
Matt J
il 6 Apr 2021
I suggest attaching a.mat file containing b and c=sum(A,2).
I have used the code:
I doubt it. The first line generates an error.
options = optimoptions('quadprog','interior-point-convex');
Elisabetta Biondi
il 7 Apr 2021
Bruno Luong
il 7 Apr 2021
Modificato: Bruno Luong
il 7 Apr 2021
Your b contain -1, so zeros is NOT feasible point either. (since A*0 is 0 vector and it is NOT <= -1)
You seem to have bug in b, or do your formulation incorrectky.
Elisabetta Biondi
il 7 Apr 2021
Risposte (0)
Categorie
Scopri di più su Quadratic Programming and Cone Programming in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!