grbcallback.stoponemultiobj()


grbcallback.stoponemultiobj()

中断多目标MIP问题中的一个优化步骤的优化过程,而不停止分层优化过程。仅适用于多目标MIP模型以及何时在哪里成员变量不等于grb.callback.multiobj.(见回调代码有关更多信息的部分)。

您通常会通过取出最后一个完成的多目标数量的多目标步骤来停止多目标优化步骤,并使用该号码停止当前步骤并继续前进到下一个分层目标(如果有)如下所示:

示例用法:

使用gurobi;Class Callback:GRBCallback {Private Int Objcnt;私人长期开始;受保护的覆盖void relalkback(){try {if(如果(其中== grb.callback.multiobj){/ *获取当前目标号码* / objcnt = getIntinfo(grb.callback.multiobj_objcnt);/ *将开始时间重置为当前时间* / starttime = datetime.now.ticks;}否则如果(datetime.now.ticks  -  starttime> big || / *需要太长或足够好* /){/ *停止这个优化步骤* / stoponemultiobj(objcnt);}}}}

您应该参考该部分多目标有关如何指定多个目标函数并控制它们之间的权衡的信息。

空白 stoponemultiobj. objcnt)

    论点:

    objnum.:中断的多目标优化步骤的数量。对于本地运行的进程,此参数可以具有特殊值-1,这意味着停止当前步骤。