I am reading about extensions on plain vanilla B&B and heuristics for smaller trees/better branching. I have come across diving heuristics, which on the SCIP site is defined as:
A diving heuristic explores a single probing path down the search tree
What I understand reading this is that it branches using a depth-first-search rule. Does this make sense? If not, what does this mean, especially a single probing path?
Also, my other question is: when do we use this or other kinds of heuristics? I understand that heuristics can be used to find which variable to branch on (for example the most fractional), but how would I know when to explore a single path and when not to?
In another document, driving heuristics were under a section named "start heuristics". Does it mean that they are used to quickly find a feasible integer solution?