C++ Reference
C++ Reference: Routing
Detailed Description
A search monitor is a simple set of callbacks to monitor all search events.
Definition at line 3587 of file constraint_solver.h.
Public Member Functions | |
| SearchMonitor (Solver *const s) | |
| ~SearchMonitor () override | |
| virtual void | EnterSearch () |
| Beginning of the search. More... | |
| virtual void | RestartSearch () |
| Restart the search. More... | |
| virtual void | ExitSearch () |
| End of the search. More... | |
| virtual void | BeginNextDecision (DecisionBuilder *const b) |
| Before calling DecisionBuilder::Next. More... | |
| virtual void | EndNextDecision (DecisionBuilder *const b, Decision *const d) |
| After calling DecisionBuilder::Next, along with the returned decision. More... | |
| virtual void | ApplyDecision (Decision *const d) |
| Before applying the decision. More... | |
| virtual void | RefuteDecision (Decision *const d) |
| Before refuting the decision. More... | |
| virtual void | AfterDecision (Decision *const d, bool apply) |
| Just after refuting or applying the decision, apply is true after Apply. More... | |
| virtual void | BeginFail () |
| Just when the failure occurs. More... | |
| virtual void | EndFail () |
| After completing the backtrack. More... | |
| virtual void | BeginInitialPropagation () |
| Before the initial propagation. More... | |
| virtual void | EndInitialPropagation () |
| After the initial propagation. More... | |
| virtual bool | AcceptSolution () |
| This method is called when a solution is found. More... | |
| virtual bool | AtSolution () |
| This method is called when a valid solution is found. More... | |
| virtual void | NoMoreSolutions () |
| When the search tree is finished. More... | |
| virtual bool | LocalOptimum () |
| When a local optimum is reached. More... | |
| virtual bool | AcceptDelta (Assignment *delta, Assignment *deltadelta) |
| virtual void | AcceptNeighbor () |
| After accepting a neighbor during local search. More... | |
| virtual void | AcceptUncheckedNeighbor () |
| After accepting an unchecked neighbor during local search. More... | |
| virtual bool | IsUncheckedSolutionLimitReached () |
| Returns true if the limit of solutions has been reached including unchecked solutions. More... | |
| Solver * | solver () const |
| virtual void | PeriodicCheck () |
| Periodic call to check limits in long running methods. More... | |
| virtual int | ProgressPercent () |
| Returns a percentage representing the propress of the search before reaching limits. More... | |
| virtual void | Accept (ModelVisitor *const visitor) const |
| Accepts the given model visitor. More... | |
| virtual void | Install () |
| Registers itself on the solver such that it gets notified of the search and propagation events. More... | |
| virtual std::string | DebugString () const |
Static Public Attributes | |
| static const int | kNoProgress = -1 |
Constructor & Destructor Documentation
◆ SearchMonitor()
|
inlineexplicit |
Definition at line 3591 of file constraint_solver.h.
◆ ~SearchMonitor()
|
inlineoverride |
Definition at line 3592 of file constraint_solver.h.
Member Function Documentation
◆ Accept()
|
virtual |
Accepts the given model visitor.
Reimplemented in RegularLimit, and OptimizeVar.
◆ AcceptDelta()
|
virtual |
Reimplemented in OptimizeVar.
◆ AcceptNeighbor()
|
virtual |
After accepting a neighbor during local search.
◆ AcceptSolution()
|
virtual |
This method is called when a solution is found.
It asserts whether the solution is valid. A value of false indicates that the solution should be discarded.
Reimplemented in OptimizeVar.
◆ AcceptUncheckedNeighbor()
|
virtual |
After accepting an unchecked neighbor during local search.
Reimplemented in SearchLog.
◆ AfterDecision()
|
virtual |
Just after refuting or applying the decision, apply is true after Apply.
This is called only if the Apply() or Refute() methods have not failed.
◆ ApplyDecision()
|
virtual |
Before applying the decision.
Reimplemented in SearchLog.
◆ AtSolution()
|
virtual |
This method is called when a valid solution is found.
If the return value is true, then search will resume after. If the result is false, then search will stop there.
Reimplemented in OptimizeVar, and SearchLog.
◆ BeginFail()
|
virtual |
Just when the failure occurs.
Reimplemented in SearchLog.
◆ BeginInitialPropagation()
|
virtual |
Before the initial propagation.
Reimplemented in SearchLog.
◆ BeginNextDecision()
|
virtual |
Before calling DecisionBuilder::Next.
Reimplemented in OptimizeVar, and SearchLimit.
◆ DebugString()
|
inlinevirtualinherited |
Reimplemented in Pack, Assignment, SequenceVar, RegularLimit, SearchLimit, OptimizeVar, SolutionCollector, IntVarIterator, CPFeasibilityFilter, Constraint, Demon, DecisionBuilder, Decision, PropagationBaseObject, IntVarFilteredDecisionBuilder, ArrayWithOffset< T >, SearchLog, BooleanVar, LocalSearchMonitor, GlobalVehicleBreaksConstraint, PropagationMonitor, LocalSearchFilterManager, DelayedCallMethod2< T, P, Q >, DelayedCallMethod1< T, P >, DelayedCallMethod0< T >, ExchangeSubtrip, CallMethod3< T, P, Q, R >, RelocateSubtrip, CallMethod2< T, P, Q >, CallMethod1< T, P >, CallMethod0< T >, PairNodeSwapActiveOperator< swap_first >, RelocateExpensiveChain, FilteredHeuristicExpensiveChainLNSOperator, FilteredHeuristicPathLNSOperator, IndexPairSwapActiveOperator, SwapIndexPairOperator, PairExchangeRelocateOperator, PairExchangeOperator, LightPairRelocateOperator, PairRelocateOperator, MakePairInactiveOperator, MakePairActiveOperator, and MakeRelocateNeighborsOperator.
Definition at line 3108 of file constraint_solver.h.
◆ EndFail()
|
virtual |
After completing the backtrack.
◆ EndInitialPropagation()
|
virtual |
After the initial propagation.
Reimplemented in SearchLog.
◆ EndNextDecision()
|
virtual |
After calling DecisionBuilder::Next, along with the returned decision.
◆ EnterSearch()
|
virtual |
Beginning of the search.
Reimplemented in SearchLimit, OptimizeVar, SolutionCollector, and SearchLog.
◆ ExitSearch()
|
virtual |
End of the search.
Reimplemented in RegularLimit, and SearchLog.
◆ Install()
|
virtual |
Registers itself on the solver such that it gets notified of the search and propagation events.
Reimplemented in LocalSearchMonitor, and PropagationMonitor.
◆ IsUncheckedSolutionLimitReached()
|
inlinevirtual |
Returns true if the limit of solutions has been reached including unchecked solutions.
Reimplemented in RegularLimit.
Definition at line 3658 of file constraint_solver.h.
◆ LocalOptimum()
|
virtual |
When a local optimum is reached.
If 'true' is returned, the last solution is discarded and the search proceeds with the next one.
◆ NoMoreSolutions()
|
virtual |
When the search tree is finished.
Reimplemented in SearchLog.
◆ PeriodicCheck()
|
virtual |
Periodic call to check limits in long running methods.
Reimplemented in SearchLimit.
◆ ProgressPercent()
|
inlinevirtual |
Returns a percentage representing the propress of the search before reaching limits.
Reimplemented in RegularLimit.
Definition at line 3667 of file constraint_solver.h.
◆ RefuteDecision()
|
virtual |
Before refuting the decision.
Reimplemented in SearchLog, SearchLimit, and OptimizeVar.
◆ RestartSearch()
|
virtual |
Restart the search.
◆ solver()
|
inline |
Definition at line 3660 of file constraint_solver.h.
Member Data Documentation
◆ kNoProgress
|
static |
Definition at line 3589 of file constraint_solver.h.
The documentation for this class was generated from the following file: