简体   繁体   English

Cplex C++ 中的不可行行

[英]infeasible row in Cplex C++

I have a small question;我有一个小问题; I am solving MIP Model , coded on C++ and solving by Cplex solver.我正在求解 MIP 模型,用 C++ 编码并通过 Cplex 求解器求解。 I remember that when I test the model with relatively smaller instances , it was giving me "infeasibility row ….";我记得当我用相对较小的实例测试模型时,它给了我“不可行性行......”; Now ,I test the same model on a large size instance and I get the infeasibility and it does not tell me which row causes infeasibility.现在,我在一个大型实例上测试了相同的模型,我得到了不可行性,但它没有告诉我哪一行导致了不可行性。 How can I find the which parameter or constraint causes infeasibility ?如何找到导致不可行性的参数或约束? While the larger instance is tested, the presolve is performed, may it cause the infeasibility?在测试较大的实例时,执行预求解,是否会导致不可行? I googled about conflict refiner but could not find a small and clear example explaining how to invoke it ?我在 google 上搜索了冲突提炼器,但找不到一个小而清晰的例子来解释如何调用它? I will be very happy, if you have any suggestions or ideas如果您有任何建议或想法,我会很高兴

Thank you谢谢

Another way to find where the infeasibility comes is to export your model as an LP file or similar, then try to solve it with the standalone cplex.找出不可行性的另一种方法是将模型导出为 LP 文件或类似文件,然后尝试使用独立 cplex 解决它。 It helps if you name your variables and constraints sensibly.如果您明智地命名变量和约束,它会有所帮助。 Then you have all the interactive tools in cplex to help you find where the issues are.然后,您将拥有 cplex 中的所有交互式工具,以帮助您找到问题所在。

in C++ you should have a look at FeasOpt在 C++ 中,你应该看看 FeasOpt

In the documentation see在文档中看到

CPLEX > User's Manual for CPLEX > Infeasibility and unboundedness CPLEX > CPLEX 用户手册 > 不可行性和无限性

cplex 文档中的 feasopt

If you model in OPL you could call the relaxation from concert C++ APIs如果您在 OPL 中建模,则可以从 Concert C++ API 调用松弛

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM