A search monitor is a simple set of callbacks to monitor all search events.
Definition at line 3572 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 |
|
inlineexplicit |
Definition at line 3576 of file constraint_solver.h.
|
inlineoverride |
Definition at line 3577 of file constraint_solver.h.
|
virtual |
Accepts the given model visitor.
Reimplemented in operations_research::RegularLimit, and operations_research::OptimizeVar.
|
virtual |
Reimplemented in operations_research::OptimizeVar.
|
virtual |
After accepting a neighbor during local search.
|
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 operations_research::OptimizeVar.
|
virtual |
After accepting an unchecked neighbor during local search.
Reimplemented in operations_research::SearchLog.
|
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.
|
virtual |
Before applying the decision.
Reimplemented in operations_research::SearchLog.
|
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 operations_research::OptimizeVar, and operations_research::SearchLog.
|
virtual |
Just when the failure occurs.
Reimplemented in operations_research::SearchLog.
|
virtual |
Before the initial propagation.
Reimplemented in operations_research::SearchLog.
|
virtual |
Before calling DecisionBuilder::Next.
Reimplemented in operations_research::SearchLimit, and operations_research::OptimizeVar.
|
inlinevirtualinherited |
Reimplemented in operations_research::Pack, operations_research::Assignment, operations_research::SequenceVar, operations_research::RegularLimit, operations_research::SearchLimit, operations_research::OptimizeVar, operations_research::SolutionCollector, operations_research::IntVarIterator, operations_research::Constraint, operations_research::CPFeasibilityFilter, operations_research::Demon, operations_research::DecisionBuilder, operations_research::Decision, operations_research::ChristofidesFilteredDecisionBuilder, operations_research::ParallelSavingsFilteredDecisionBuilder, operations_research::PropagationBaseObject, operations_research::SequentialSavingsFilteredDecisionBuilder, operations_research::ComparatorCheapestAdditionFilteredDecisionBuilder, operations_research::EvaluatorCheapestAdditionFilteredDecisionBuilder, operations_research::LocalCheapestInsertionFilteredDecisionBuilder, operations_research::GlobalCheapestInsertionFilteredDecisionBuilder, operations_research::ArrayWithOffset< T >, operations_research::SearchLog, operations_research::BooleanVar, operations_research::LocalSearchMonitor, operations_research::PropagationMonitor, operations_research::LocalSearchFilterManager, operations_research::PathWithPreviousNodesOperator, operations_research::DelayedCallMethod2< T, P, Q >, operations_research::DelayedCallMethod1< T, P >, operations_research::DelayedCallMethod0< T >, operations_research::CallMethod3< T, P, Q, R >, operations_research::CallMethod2< T, P, Q >, operations_research::CallMethod1< T, P >, operations_research::ExchangeSubtrip, operations_research::RelocateSubtrip, operations_research::CallMethod0< T >, operations_research::PairNodeSwapActiveOperator< swap_first >, operations_research::RelocateExpensiveChain, operations_research::IndexPairSwapActiveOperator, operations_research::SwapIndexPairOperator, operations_research::PairExchangeRelocateOperator, operations_research::PairExchangeOperator, operations_research::LightPairRelocateOperator, operations_research::PairRelocateOperator, operations_research::MakePairInactiveOperator, operations_research::MakePairActiveOperator, and operations_research::MakeRelocateNeighborsOperator.
Definition at line 3093 of file constraint_solver.h.
|
virtual |
After completing the backtrack.
|
virtual |
After the initial propagation.
Reimplemented in operations_research::SearchLog.
|
virtual |
After calling DecisionBuilder::Next, along with the returned decision.
|
virtual |
Beginning of the search.
Reimplemented in operations_research::SearchLimit, operations_research::OptimizeVar, operations_research::SolutionCollector, and operations_research::SearchLog.
|
virtual |
End of the search.
Reimplemented in operations_research::RegularLimit, and operations_research::SearchLog.
|
virtual |
Registers itself on the solver such that it gets notified of the search and propagation events.
Reimplemented in operations_research::LocalSearchMonitor, and operations_research::PropagationMonitor.
|
inlinevirtual |
Returns true if the limit of solutions has been reached including unchecked solutions.
Reimplemented in operations_research::RegularLimit.
Definition at line 3643 of file constraint_solver.h.
|
virtual |
When a local optimum is reached.
If 'true' is returned, the last solution is discarded and the search proceeds with the next one.
|
virtual |
When the search tree is finished.
Reimplemented in operations_research::SearchLog.
|
virtual |
Periodic call to check limits in long running methods.
Reimplemented in operations_research::SearchLimit.
|
inlinevirtual |
Returns a percentage representing the propress of the search before reaching limits.
Reimplemented in operations_research::RegularLimit.
Definition at line 3652 of file constraint_solver.h.
|
virtual |
Before refuting the decision.
Reimplemented in operations_research::SearchLimit, operations_research::OptimizeVar, and operations_research::SearchLog.
|
virtual |
Restart the search.
|
inline |
Definition at line 3645 of file constraint_solver.h.
|
static |
Definition at line 3574 of file constraint_solver.h.