Я чувствую, что мне не хватает чего-то очень простого и очень простого. Я пытаюсь добавить ограничение после того, как 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
Код компилируется и запускается, когда я убрать это ограничение дополнения.
Может кто-нибудь сказать мне, что не так?