3
$\begingroup$

In a branch and bound algorithm, what is the difference between hot and warm starting and what kind of information does each of them require to store in memory? Otherwise, for the hot starting, what does the L/U-factorization mean?

$\endgroup$

1 Answer 1

9
$\begingroup$

In general, the definition of what is a warm start or hot start (or "jump start") depends on the actual solver. Different solvers allow different kind of hot/warm starts and may call things different names. So your solver manuals should tell what exactly these things are and how they differ between different solvers.

All the terms refer to the same concept: providing additional information to the solver to allow the solver to start faster.

For example, you could provide a feasible solution to the solver. That way the solver does not have to find a first feasible solution itself. A solver may also allow you to specify a starting basis for the simplex algorithm which then defines the initial basis matrix. "L/U factorization" refers to a factorization of that basis matrix that is required to solve linear equation systems involving the basis matrix during the simplex algorithm.

Again, the solver documentation should tell you what the things are that you can provide and how these help the solver in potentially solving the problem faster.

$\endgroup$
3
  • $\begingroup$ I'm asking about the concept, I'm trying to learn how to implement it in python $\endgroup$
    – O. Sd
    Nov 3, 2021 at 13:04
  • $\begingroup$ What exactly do you want to implement in Python? Are you implementing your own solver? $\endgroup$ Nov 3, 2021 at 14:38
  • $\begingroup$ Yes, in fact I'm trying to learn how to implement personalised algorithms for discrete optimization $\endgroup$
    – O. Sd
    Dec 4, 2021 at 7:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.