Initialises the bfs instance BfsInstance. A bfs instance is an instance of the best first search solver, with which node relaxation and separation solvers can be associated and used to optimise the problem constraints posted to the relaxed node solver with respect to its objective using a specified node ordering scheme. In particular best-first and best-estimate search schemes are supported and application-specific schemes may be easily defined by the user.
If BfsInstance is not an already existing bfs instance, a new bfs instance will be created and initialised. If it is an existing bfs instance, and it is not currently being used (having no associated solvers), it is effectively reinitialised. Otherwise, the predicate aborts with an error. Note that a bfs instance is a module, and each bfs instance can be associated with at most one relaxation and one separation solver at any time and vice versa.