我正在研究电动汽车路径问题,我的问题的解决方案是不可行的。现在,我如何获得解决方案不可行的约束?我想使用Python API在docplex
中获得违反的约束。
solve_status = mdl.get_solve_status()
if solve_status.name == 'INFEASIBLE_SOLUTION': # or also 'INFEASIBLE_OR_UNBOUNDED_SOLUTION'
cref = cr.ConflictRefiner()
print('show some of the constraints that can be removed to arrive at a minimal conflict')
cref.refine_conflict(mdl, display=True)
字符串
我试过了,但这给了我一些违反的约束。不打印约束。
2条答案
按热度按时间11dmarpk1#
在docplex文档中,有一些函数可以显示冲突并在冲突上进行重命名:https://ibmdecisionoptimization.github.io/docplex-doc/mp/docplex.mp.conflict_refiner.html这些函数是
docplex.mp.conflict_refiner.dislay()
-显示所有冲突。docplex.mp.conflict_refiner.iter_conflicts()
-返回冲突的迭代器(命名为元组)。0vvn1miw2#
https://github.com/AlexFleischerParis/zoodocplex/blob/master/zoorelaxationandconflict.py上的小示例
字符串