internal.optim.postsolve line 183 error?
3 ビュー (過去 30 日間)
古いコメントを表示
Hello. I have a code that uses the quadprog function to solve a quadratic problem. I am using the 2014 version. It used to run okay but I started getting the following error:
Index exceeds matrix dimensions.
Error in internal.optim.postsolve (line 183)
Error in ipqpcommon (line 64)
Error in quadprog (line 353)
[X,fval,exitflag,output,lambda] = ipqpcommon(H,f,A,B,Aeq,Beq,lb,ub,X0, ...
Error in miqp (line 737)
[x,fval,exitflag,outpu,lambda] = quadprog(subprob.H, subprob.f, ...
I am unable to access the file ipqpcommon or internal.optim.postsolve where the problem occurs. Furthermore, when I run the same code on the 2010 version this error does not occur, but it runs much faster on the 2014 version (until the error occurs and the code stops).
How can I fix this error?
3 件のコメント
Walter Roberson
2016 年 5 月 16 日
Is the above, together with that toolbox, enough to reproduce the problem?
回答 (1 件)
Steven Lord
2016 年 5 月 16 日
Set a breakpoint on line 737 in miqp then run your code. Ensure that all the variables that miqp is using to call quadprog satisfy the requirements for sizes and shapes given in the quadprog documentation for the release you're using. For instance, are H and f correctly sized so that x'*H*x and f'*x are both defined?
If everything seems to be defined correctly, save those variables with which miqp is calling quadprog and submit those variables along with the corresponding quadprog call to Technical Support for investigation.
参考
カテゴリ
Help Center および File Exchange で Linear Least Squares についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!