并发环境中


并发环境中

Gurobi的一个算法选项是并发优化,其中并行执行多个独立的解决方案,Gurobi负责收集和组合结果。并发优化可以非常强大;它实际上是求解线性规划模型的默认方法。

并发优化的力量来自于这样一个事实:解决模型的不同方法可能具有不同的性能特征,并行执行它们可以让您在第一个方法完成时停止。我们所有的并发方案都有默认的选择来决定每个独立解所使用的策略。但是,您也可以选择不同的策略。这是通过并发环境中.通过为模型创建两个或多个并发环境,并在这些环境上设置参数,您可以精确地控制每个并发解决方案的功能。

并发环境是通过API例程创建的Cc++Javanet,或Python).您可以像在任何其他环境中一样在这些环境中设置参数,但在本例中,它们只影响几个独立的解决方案中的一个。

举个简单的例子,在Python中你可以这样做:

#创建并发环境env0 = model.getConcurrentEnv(0) env1 = model.getConcurrentEnv(1)setParam (MIPFocus, 1) env1。#执行(并发)优化模型。
这将在你的模型上启动两个并发的解决方案,一个是MIPFocus参数设置为1,另一个参数设置为2。

命令行界面的用户可以使用.prm文件使用ConcurrentSettings参数。