C++ Reference: class RelaxationInducedNeighborhoodGenerator

Note: This documentation is automatically generated.

Generates a neighborhood by fixing the variables to solutions reported in various repositories. This is inspired from RINS published in "Exploring relaxation induced neighborhoods to improve MIP solutions" 2004 by E. Danna et.

If incomplete_solutions is provided, this generates a neighborhood by fixing the variable values to a solution in the SharedIncompleteSolutionManager and ignores the other repositories.

Otherwise, if response_manager is not provided, this generates a neighborhood using only the linear/general relaxation values. The domain of the variables are reduced to the integer values around their lp solution/relaxation solution values. This was published in "RENS – The Relaxation Enforced Neighborhood" 2009 by Timo Berthold.
Method
Generate

Return type: Neighborhood

Arguments: const CpSolverResponse& initial_solution, double difficulty, absl::BitGenRef random

Both initial solution and difficulty values are ignored.

ReadyToGenerate

Return type: bool

Returns true if the required solutions are available.

RelaxationInducedNeighborhoodGenerator

Return type: explicit

Arguments: NeighborhoodGeneratorHelper const* helper, const SharedResponseManager* response_manager, const SharedRelaxationSolutionRepository* relaxation_solutions, const SharedLPSolutionRepository* lp_solutions, SharedIncompleteSolutionManager* incomplete_solutions, const std::string& name