Python 古罗比;在回调例程中将连续[0,1]变量更改为二进制
我正在使用Gurobi-Python接口Python 古罗比;在回调例程中将连续[0,1]变量更改为二进制,python,linear-programming,gurobi,integer-programming,mixed-integer-programming,Python,Linear Programming,Gurobi,Integer Programming,Mixed Integer Programming,我正在使用Gurobi-Python接口gurobipy。我有一个包含很多变量的模型公式。我想将不太重要的变量初始化为二进制连续变量,并在需要时将其更改为二进制。然而,这种情况不会经常发生 我尝试了来自的解决方案,但这需要重建模型。在GRB.callback.MIPSOL的回调例程中重建模型会导致崩溃 这可能吗?或者我应该以二进制形式引入所有变量,并在GRB.Callback.MIPNODE中处理这些情况?Gurobi Optimizer不支持在回调中更改变量类型(VType属性)。处理“不太重
gurobipy
。我有一个包含很多变量的模型公式。我想将不太重要的变量初始化为二进制连续变量,并在需要时将其更改为二进制。然而,这种情况不会经常发生
我尝试了来自的解决方案,但这需要重建模型。在GRB.callback.MIPSOL的回调例程中重建模型会导致崩溃
这可能吗?或者我应该以二进制形式引入所有变量,并在GRB.Callback.MIPNODE
中处理这些情况?Gurobi Optimizer不支持在回调中更改变量类型(VType属性)。处理“不太重要的变量”的更好方法是将其BranchPriority属性设置为负值(<0)。Gurobi Optimizer不支持在回调中更改变量类型(VType属性)。处理“不太重要的变量”的更好方法是将其BranchPriority属性设置为负值(<0)。感谢您的快速响应!我已经手动设置了分支优先级,不太重要的变量都有分支优先级1,而其他变量有更高的值。这是否达到了相同的目标,或者我缺少的负分支优先级有什么特殊之处?关键问题是低优先级变量的BranchPriority值应该更小;我假设您对所有其他变量都使用默认值BranchPriority(0)。感谢您的快速响应!我已经手动设置了分支优先级,不太重要的变量都有分支优先级1,而其他变量有更高的值。这是否达到了相同的目标,或者我缺少的负分支优先级有什么特殊之处?关键问题是低优先级变量的BranchPriority值应该更小;我假设您对所有其他变量使用默认值BranchPriority(0)。