跳转到主要内容

Gurobi Python API回调

回答

评论

4评论

  • 伊莱陶尔康
    Gurobi员工Gurobi员工

    模型的目标函数\ (\ texttt {bm23} \)是不可或缺的。报告的客观约束Gurobi通过\ \ texttt {GRB.Callback。MIP_OBJBND} \) exploits the integrality of the objective function by rounding up to the nearest integer. This results in a tighter (and completely valid) bound. Is there a reason you want to query the weaker objective bound?

    0
  • Ambareesh Vaidya
    Gurobi-versary
    第一个评论
    第一个问题

    你好,

    我想查询目标函数应用在根节点的削减。实例的值“bm23”根节点是20.57092但是利用MIP回调函数值是圆形的21。有办法没有舍入值?

    谢谢你!

    0
  • 伊莱陶尔康
    Gurobi员工Gurobi员工

    Gurobi C API包括必要的常数查询“连续”目标约束(ObjBoundC在回调)。连续的目标不包括额外的完整性加强。在\ \ texttt {gurobi_c。h} \),我们有:

    #定义GRB_CB_MIP_OBJBNDC 3007
    #定义GRB_CB_MIPSOL_OBJBNDC 4007
    #定义GRB_CB_MIPNODE_OBJBNDC 5008

    查询连续目标绑定在一个\ (\ texttt {MIP} \)回调通过Python API,通过在整数代码相关的C API \ (\ texttt {GRB_CB_MIP_OBJBNDC} \)不变Model.cbGet ():

    MIP_OBJBNDC = 3007

    def cb(模型):
    如果在哪里= = GRB.Callback.MIP:
    objbndc = model.cbGet (MIP_OBJBNDC)
    打印(objbndc)

    注意,这些回调代码是故意非法,因为(我)难得想查询连续绑定时更严格的约束是现成的,和(2)结果可能不会如预期MILPs以外的问题。

    0
  • Ambareesh Vaidya
    Gurobi-versary
    第一个评论
    第一个问题

    它工作!

    谢谢你!

    0

登录留下你的评论。