Model.cbSetSolution()

cbSetSolution ( vars, solution )

Import solution values for a heuristic solution. Only available when the where value on the callback function is equal to GRB.Callback.MIP, GRB.Callback.MIPNODE, or GRB.Callback.MIPSOL (see the Callback Codes section for more information).

When you specify a heuristic solution from a callback, variables initially take undefined values. You should use this method to specify variable values. You can make multiple calls to cbSetSolution from one callback invocation to specify values for multiple sets of variables. After the callback, if values have been specified for any variables, the Gurobi optimizer will try to compute a feasible solution from the specified values, possibly filling in values for variables whose values were left undefined. You can also optionally call cbUseSolution within your callback function to try to immediately compute a feasible solution from the specified values.

Note that this method is not supported in a Compute Server environment.

Arguments:

vars: The variables whose values are being set. This can be a list of variables or a single variable.

solution: The desired values of the specified variables in the new solution.

Example usage:

  def mycallback(model, where):
    if where == GRB.Callback.MIPNODE:
      model.cbSetSolution(vars, newsolution)

  model.optimize(mycallback)