Model.cbStopOneMultiObj ()

cbStopOneMultiObj(objcnt)

中断的优化过程的优化步骤之一在一个没有停止分层优化的多目标MIP问题的过程。只有当用于多目标MIP模型在哪里成员变量不等于GRB.Callback.MULTIOBJ(见回调代码部分获取更多信息)。

你通常会停止一个多目标优化的步骤通过查询目标序列的最后完成数量的步骤,并使用这个数字来停止当前步骤,继续下一个层次目标(如果有的话)下面的例子所示:

使用示例:

导入时间def mycallback(模型):如果= = GRB.Callback的地方。MULTIOBJ: #得到当前目标的数字模型。_objcnt = model.cbGet (GRB.Callback.MULTIOBJ_OBJCNT) #重置开始时间为当前时间模型。_starttime = time.time() #看看我们要停止当前多目标一步else if time.time()——模型。_starttime > 1000: #或解决方案仅仅是足够好的#停止这种优化一步model.cbStopOneMultiObj (model._objcnt)模型。_objcnt = 0模型。_starttime = time.time () model.optimize (mycallback)

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

参数:

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