Skip to main content

May I ask whether part of the results of the heuristic algorithm search designed by myself can be input into Gurobi

Answered

Comments

4 comments

  • Gwyneth Butera
    Gurobi Staff Gurobi Staff

    Hi Ariel - Does this help How do I inject a solution calculated in a separate process? - G

    0
  • Ariel W
    Gurobi-versary
    Curious
    Conversationalist

    Thanks! But still a little bit question: Does Gurobi continue the downward branching iterative calculation on the basis of this input solution or anything else?

    0
  • Hi Ariel,

    When you provide a starting solution to Gurobi—whether from a heuristic, a previous run, or any other source—Gurobi uses this solution in several ways that can impact the optimization process, including its branching decisions.  Here's a more detailed look at how Gurobi uses a starting solution, particularly for MIP problems:

    1. Feasible Solution: If the starting solution is feasible, Gurobi uses it as a reference point. This means the solver knows it has a valid solution from the get-go, which helps in bounding decisions and can significantly reduce the search space. For MIP problems, having an initial feasible solution can lead to an earlier determination of the optimality gap, potentially speeding up the time to find the optimal solution or proving that the current solution is closer to optimality.

    2. Branching Decisions: The starting solution can influence branching decisions, but Gurobi does not specifically continue "downward branching" from the values in the initial solution in a deterministic way. Instead, Gurobi's branch-and-bound algorithm will consider the entire solution space, guided by its internal heuristics for variable selection, node selection, and cutting planes. The presence of a feasible solution can affect these heuristics by providing additional information about the problem structure and potentially good regions of the search space.

    3. Heuristic Adjustments: Gurobi performs several heuristics at the beginning and during the branch-and-bound process. A good initial solution can help these heuristics by guiding them towards promising areas of the search space or by validating the effectiveness of certain cuts or branches early on.

    4. Bounding: One of the most direct impacts of a starting solution is on bounding. If the starting solution has a better objective value than the bounds determined by the relaxation of the problem, Gurobi can use it to improve the global bounds. This can lead to the pruning of branches that cannot improve upon the starting solution, thereby reducing the overall solution time.

    In summary, while Gurobi doesn't specifically branch downward from the heuristic starting point in a direct, sequential manner, the presence of a starting solution informs its optimization process in several beneficial ways. The algorithm will still explore the solution space according to its sophisticated optimization strategies, but with the advantage of having a concrete benchmark that can guide its search more efficiently.

    - Bot

    0
  • Ariel W
    Gurobi-versary
    Curious
    Conversationalist

    Thanks Bot, for your detailed explanation, I got the principle behind this!

    0

Please sign in to leave a comment.