How to Resolve ERROR: invalid SCIP stage <10> in SCIP C++
How to Resolve ERROR: invalid SCIP stage <10> in SCIP C++
我觉得我错过了一些非常简单和非常直接的东西。我试图在 LP 解决后添加约束(使用最佳 LP 解决方案作为设计此约束的机制)。我正在通过这段代码添加它
432 SCIP_CONS * cons = nullptr;
433 namebuf.str("");
434 namebuf<<"cut_3_OR1";
435 SCIP_CALL(SCIPcreateConsLinear(scip, &cons, namebuf.str().c_str(), 0, nullptr, nullptr, -SCIPinfinity(scip), 1.0, /* <= 1.0 constraint */
436 true, /* initial <= 0 */
437 false, /* separate */
438 true, /* enforce */
439 true, /* check */
440 true, /* propagate */
441 false, /* local */
442 true, /* modifiable */
443 false, /* dynamic */
444 false, /* removable */
445 false /* stickingatnode */));
代码编译正常,但在 运行 代码后,我收到此错误消息
[src/scip/scip_cons.c:991] ERROR: invalid SCIP stage <10>
[src/scip/cons_linear.c:17695] ERROR: Error <-8> in function call
[src/Solver.h:445] ERROR: Error <-8> in function call
make: *** [run] Error 1
当我删除此约束添加时,代码编译并运行。
谁能告诉我哪里出了问题?
第 10 阶段是 SCIP_STAGE_SOLVED
。在您的问题得到最优解后,您尝试添加约束。
您要添加的约束是否必要?然后你可能必须实现一个约束处理程序并在你的处理程序的 sepalp-callback 中添加你的约束。例如,您可以查看 SCIP 文档中的 TSP 示例(它有一个 subtour-elimination 约束处理程序)
我觉得我错过了一些非常简单和非常直接的东西。我试图在 LP 解决后添加约束(使用最佳 LP 解决方案作为设计此约束的机制)。我正在通过这段代码添加它
432 SCIP_CONS * cons = nullptr;
433 namebuf.str("");
434 namebuf<<"cut_3_OR1";
435 SCIP_CALL(SCIPcreateConsLinear(scip, &cons, namebuf.str().c_str(), 0, nullptr, nullptr, -SCIPinfinity(scip), 1.0, /* <= 1.0 constraint */
436 true, /* initial <= 0 */
437 false, /* separate */
438 true, /* enforce */
439 true, /* check */
440 true, /* propagate */
441 false, /* local */
442 true, /* modifiable */
443 false, /* dynamic */
444 false, /* removable */
445 false /* stickingatnode */));
代码编译正常,但在 运行 代码后,我收到此错误消息
[src/scip/scip_cons.c:991] ERROR: invalid SCIP stage <10>
[src/scip/cons_linear.c:17695] ERROR: Error <-8> in function call
[src/Solver.h:445] ERROR: Error <-8> in function call
make: *** [run] Error 1
当我删除此约束添加时,代码编译并运行。
谁能告诉我哪里出了问题?
第 10 阶段是 SCIP_STAGE_SOLVED
。在您的问题得到最优解后,您尝试添加约束。
您要添加的约束是否必要?然后你可能必须实现一个约束处理程序并在你的处理程序的 sepalp-callback 中添加你的约束。例如,您可以查看 SCIP 文档中的 TSP 示例(它有一个 subtour-elimination 约束处理程序)