Uses of Class
com.google.ortools.constraintsolver.SearchMonitor
Packages that use SearchMonitor
-
Uses of SearchMonitor in com.google.ortools.constraintsolver
Subclasses of SearchMonitor in com.google.ortools.constraintsolverModifier and TypeClassDescriptionclass
class
class
class
class
This class encapsulates an objective.class
class
Usual limit based on wall_time, number of explored branches and
number of failures in the search treeclass
Base class of all search limits.class
The base class of all search logs that periodically outputs information when
the search is running.class
This class is the root class of all solution collectors.
It implements a basic query API to be used independently
of the collector used.Methods in com.google.ortools.constraintsolver that return SearchMonitorModifier and TypeMethodDescriptionSolver.makeAtSolutionCallback
(Runnable callback) Solver.makeConstantRestart
(int frequency) This search monitor will restart the search periodically after 'frequency'
failures.Solver.makeEnterSearchCallback
(Runnable callback) ----- Callback-based search monitors -----Solver.makeExitSearchCallback
(Runnable callback) Solver.makeLubyRestart
(int scale_factor) This search monitor will restart the search periodically.
At the iteration n, it will restart after scale_factor * Luby(n) failures
where Luby is the Luby Strategy (i.e. 1 1 2 1 1 2 4 1 1 2 1 1 2 4 8...).Solver.makeSearchLog
(int branch_period) The SearchMonitors below will display a periodic search log
on LOG(INFO) every branch_period branches explored.Solver.makeSearchLog
(int branch_period, IntVar var) At each solution, this monitor also display the var value.Solver.makeSearchLog
(int branch_period, IntVar[] vars, Supplier<String> display_callback) At each solution, this monitor will display the 'vars' values and the
result ofdisplay_callback
.Solver.makeSearchLog
(int branch_period, IntVar var, Supplier<String> display_callback) At each solution, this monitor will display the 'var' value and the
result ofdisplay_callback
.Solver.makeSearchLog
(int branch_period, OptimizeVar opt_var) OptimizeVar Search Logs
At each solution, this monitor will also display the 'opt_var' value.Solver.makeSearchLog
(int branch_period, OptimizeVar opt_var, Supplier<String> display_callback) Creates a search monitor that will also print the result of the
display callback.Solver.makeSearchLog
(int branch_period, Supplier<String> display_callback) At each solution, this monitor will also display result of
display_callback
.Solver.makeSearchTrace
(String prefix) Creates a search monitor that will trace precisely the behavior of the
search.Solver.makeSymmetryManager
(SymmetryBreaker v1) Solver.makeSymmetryManager
(SymmetryBreaker[] visitors) Symmetry Breaking.Solver.makeSymmetryManager
(SymmetryBreaker v1, SymmetryBreaker v2) Solver.makeSymmetryManager
(SymmetryBreaker v1, SymmetryBreaker v2, SymmetryBreaker v3) Solver.makeSymmetryManager
(SymmetryBreaker v1, SymmetryBreaker v2, SymmetryBreaker v3, SymmetryBreaker v4) Methods in com.google.ortools.constraintsolver with parameters of type SearchMonitorModifier and TypeMethodDescriptionvoid
RoutingModel.addSearchMonitor
(SearchMonitor monitor) Adds a search monitor to the search used to solve the routing model.static long
SearchMonitor.getCPtr
(SearchMonitor obj) Solver.makeNestedOptimize
(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1) Solver.makeNestedOptimize
(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor[] monitors) Solver.makeNestedOptimize
(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2) Solver.makeNestedOptimize
(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3) Solver.makeNestedOptimize
(DecisionBuilder db, Assignment solution, boolean maximize, long step, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4) Solver.makeSolveOnce
(DecisionBuilder db, SearchMonitor monitor1) Solver.makeSolveOnce
(DecisionBuilder db, SearchMonitor[] monitors) Solver.makeSolveOnce
(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2) Solver.makeSolveOnce
(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3) Solver.makeSolveOnce
(DecisionBuilder db, SearchMonitor monitor1, SearchMonitor monitor2, SearchMonitor monitor3, SearchMonitor monitor4) void
Solver.newSearch
(DecisionBuilder db, SearchMonitor m1) void
Solver.newSearch
(DecisionBuilder db, SearchMonitor[] monitors)
Decomposed search.
The code for a top level search should look like
solver->NewSearch(db);
while (solver->NextSolution()) {
.. use the current solution
}
solver()->EndSearch();void
Solver.newSearch
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2) void
Solver.newSearch
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3) void
Solver.newSearch
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3, SearchMonitor m4) static final void
mainJNI.RoutingModel_addSearchMonitor
(long jarg1, RoutingModel jarg1_, long jarg2, SearchMonitor jarg2_) Solver.RunUncheckedLocalSearch
(Assignment initial_solution, LocalSearchFilterManager filter_manager, LocalSearchOperator ls_operator, SearchMonitor[] monitors, RegularLimit limit) Experimental: runs a local search on the given initial solution, checking
the feasibility and the objective value of solutions using the filter
manager only (solutions are never restored in the CP world).Solver.RunUncheckedLocalSearch
(Assignment initial_solution, LocalSearchFilterManager filter_manager, LocalSearchOperator ls_operator, SearchMonitor[] monitors, RegularLimit limit, SWIGTYPE_p_absl__flat_hash_setT_operations_research__IntVar_p_t touched) Experimental: runs a local search on the given initial solution, checking
the feasibility and the objective value of solutions using the filter
manager only (solutions are never restored in the CP world).static final void
mainJNI.SearchMonitor_accept
(long jarg1, SearchMonitor jarg1_, long jarg2, ModelVisitor jarg2_) static final boolean
mainJNI.SearchMonitor_acceptDelta
(long jarg1, SearchMonitor jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_) static final boolean
mainJNI.SearchMonitor_acceptDeltaSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_) static final void
mainJNI.SearchMonitor_acceptNeighbor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_acceptNeighborSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_acceptSolution
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_acceptSolutionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_acceptSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, ModelVisitor jarg2_) static final void
mainJNI.SearchMonitor_AcceptUncheckedNeighbor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_AcceptUncheckedNeighborSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_afterDecision
(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_, boolean jarg3) static final void
mainJNI.SearchMonitor_afterDecisionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_, boolean jarg3) static final void
mainJNI.SearchMonitor_applyDecision
(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_) static final void
mainJNI.SearchMonitor_applyDecisionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_) static final boolean
mainJNI.SearchMonitor_atSolution
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_atSolutionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_beginFail
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_beginFailSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_beginInitialPropagation
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_beginInitialPropagationSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_beginNextDecision
(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_) static final void
mainJNI.SearchMonitor_beginNextDecisionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_) static final void
mainJNI.SearchMonitor_change_ownership
(SearchMonitor obj, long cptr, boolean take_or_release) static final void
mainJNI.SearchMonitor_director_connect
(SearchMonitor obj, long cptr, boolean mem_own, boolean weak_global) static final void
mainJNI.SearchMonitor_endFail
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_endFailSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_endInitialPropagation
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_endInitialPropagationSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_endNextDecision
(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Decision jarg3_) static final void
mainJNI.SearchMonitor_endNextDecisionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Decision jarg3_) static final void
mainJNI.SearchMonitor_enterSearch
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_enterSearchSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_exitSearch
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_exitSearchSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_install
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_installSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_IsUncheckedSolutionLimitReached
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_IsUncheckedSolutionLimitReachedSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_localOptimum
(long jarg1, SearchMonitor jarg1_) static final boolean
mainJNI.SearchMonitor_localOptimumSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_noMoreSolutions
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_noMoreSolutionsSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_periodicCheck
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_periodicCheckSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final int
mainJNI.SearchMonitor_progressPercent
(long jarg1, SearchMonitor jarg1_) static final int
mainJNI.SearchMonitor_progressPercentSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_refuteDecision
(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_) static final void
mainJNI.SearchMonitor_refuteDecisionSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_) static final void
mainJNI.SearchMonitor_restartSearch
(long jarg1, SearchMonitor jarg1_) static final void
mainJNI.SearchMonitor_restartSearchSwigExplicitSearchMonitor
(long jarg1, SearchMonitor jarg1_) static final long
mainJNI.SearchMonitor_solver
(long jarg1, SearchMonitor jarg1_) boolean
Solver.solve
(DecisionBuilder db, SearchMonitor m1) boolean
Solver.solve
(DecisionBuilder db, SearchMonitor[] monitors)
Solves the problem using the given DecisionBuilder and returns true if a
solution was found and accepted.
These methods are the ones most users should use to search for a solution.
Note that the definition of 'solution' is subtle.boolean
Solver.solve
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2) boolean
Solver.solve
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3) boolean
Solver.solve
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3, SearchMonitor m4) boolean
Solver.solveAndCommit
(DecisionBuilder db, SearchMonitor m1) boolean
Solver.solveAndCommit
(DecisionBuilder db, SearchMonitor[] monitors)
SolveAndCommit using a decision builder and up to three
search monitors, usually one for the objective, one for the limits
and one to collect solutions.
The difference between a SolveAndCommit() and a Solve() method
call is the fact that SolveAndCommit will not backtrack all
modifications at the end of the search.boolean
Solver.solveAndCommit
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2) boolean
Solver.solveAndCommit
(DecisionBuilder db, SearchMonitor m1, SearchMonitor m2, SearchMonitor m3) static final long
mainJNI.Solver_makeNestedOptimize__SWIG_1
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_) static final long
mainJNI.Solver_makeNestedOptimize__SWIG_2
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_, long jarg7, SearchMonitor jarg7_) static final long
mainJNI.Solver_makeNestedOptimize__SWIG_3
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_, long jarg7, SearchMonitor jarg7_, long jarg8, SearchMonitor jarg8_) static final long
mainJNI.Solver_makeNestedOptimize__SWIG_4
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_, long jarg7, SearchMonitor jarg7_, long jarg8, SearchMonitor jarg8_, long jarg9, SearchMonitor jarg9_) static final long
mainJNI.Solver_makeNestedOptimize__SWIG_5
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, SearchMonitor[] jarg6) static final long
mainJNI.Solver_makeSolveOnce__SWIG_1
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_) static final long
mainJNI.Solver_makeSolveOnce__SWIG_2
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_) static final long
mainJNI.Solver_makeSolveOnce__SWIG_3
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_) static final long
mainJNI.Solver_makeSolveOnce__SWIG_4
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_, long jarg6, SearchMonitor jarg6_) static final long
mainJNI.Solver_makeSolveOnce__SWIG_5
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3) static final void
mainJNI.Solver_newSearch__SWIG_0
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3) static final void
mainJNI.Solver_newSearch__SWIG_2
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_) static final void
mainJNI.Solver_newSearch__SWIG_3
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_) static final void
mainJNI.Solver_newSearch__SWIG_4
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_) static final void
mainJNI.Solver_newSearch__SWIG_5
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_, long jarg6, SearchMonitor jarg6_) static final long
mainJNI.Solver_RunUncheckedLocalSearch__SWIG_0
(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_, long jarg3, LocalSearchFilterManager jarg3_, long jarg4, LocalSearchOperator jarg4_, SearchMonitor[] jarg5, long jarg6, RegularLimit jarg6_, long jarg7) static final long
mainJNI.Solver_RunUncheckedLocalSearch__SWIG_1
(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_, long jarg3, LocalSearchFilterManager jarg3_, long jarg4, LocalSearchOperator jarg4_, SearchMonitor[] jarg5, long jarg6, RegularLimit jarg6_) static final boolean
mainJNI.Solver_solve__SWIG_0
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3) static final boolean
mainJNI.Solver_solve__SWIG_2
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_) static final boolean
mainJNI.Solver_solve__SWIG_3
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_) static final boolean
mainJNI.Solver_solve__SWIG_4
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_) static final boolean
mainJNI.Solver_solve__SWIG_5
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_, long jarg6, SearchMonitor jarg6_) static final boolean
mainJNI.Solver_solveAndCommit__SWIG_0
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3) static final boolean
mainJNI.Solver_solveAndCommit__SWIG_2
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_) static final boolean
mainJNI.Solver_solveAndCommit__SWIG_3
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_) static final boolean
mainJNI.Solver_solveAndCommit__SWIG_4
(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_) static void
mainJNI.SwigDirector_SearchMonitor_accept
(SearchMonitor jself, long visitor) static boolean
mainJNI.SwigDirector_SearchMonitor_acceptDelta
(SearchMonitor jself, long delta, long deltadelta) static void
mainJNI.SwigDirector_SearchMonitor_acceptNeighbor
(SearchMonitor jself) static boolean
mainJNI.SwigDirector_SearchMonitor_acceptSolution
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_AcceptUncheckedNeighbor
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_afterDecision
(SearchMonitor jself, long d, boolean apply) static void
mainJNI.SwigDirector_SearchMonitor_applyDecision
(SearchMonitor jself, long d) static boolean
mainJNI.SwigDirector_SearchMonitor_atSolution
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_beginFail
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_beginInitialPropagation
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_beginNextDecision
(SearchMonitor jself, long b) static void
mainJNI.SwigDirector_SearchMonitor_endFail
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_endInitialPropagation
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_endNextDecision
(SearchMonitor jself, long b, long d) static void
mainJNI.SwigDirector_SearchMonitor_enterSearch
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_exitSearch
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_install
(SearchMonitor jself) static boolean
static boolean
mainJNI.SwigDirector_SearchMonitor_localOptimum
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_noMoreSolutions
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_periodicCheck
(SearchMonitor jself) static int
mainJNI.SwigDirector_SearchMonitor_progressPercent
(SearchMonitor jself) static void
mainJNI.SwigDirector_SearchMonitor_refuteDecision
(SearchMonitor jself, long d) static void
mainJNI.SwigDirector_SearchMonitor_restartSearch
(SearchMonitor jself) static String
mainJNI.SwigDirector_SearchMonitor_toString
(SearchMonitor jself) static long
SearchMonitor.swigRelease
(SearchMonitor obj)