Java Reference

Java Reference

SearchLimit

Detailed Description

Base class of all search limits.

Definition at line 14 of file SearchLimit.java.

Public Member Functions

synchronized void delete ()
 
boolean crossed ()
 Returns true if the limit has been crossed. More...
 
boolean check ()
 This method is called to check the status of the limit. More...
 
void init ()
 This method is called when the search limit is initialized. More...
 
void copy (SearchLimit limit)
 Copy a limit. More...
 
SearchLimit makeClone ()
 Allocates a clone of the limit. More...
 
void enterSearch ()
 Internal methods. More...
 
void beginNextDecision (DecisionBuilder b)
 Before calling DecisionBuilder::Next. More...
 
void periodicCheck ()
 Periodic call to check limits in long running methods. More...
 
void refuteDecision (Decision d)
 Before refuting the decision. More...
 
String toString ()
 
void swigReleaseOwnership ()
 
void swigTakeOwnership ()
 
void restartSearch ()
 Restart the search. More...
 
void exitSearch ()
 End of the search. More...
 
void endNextDecision (DecisionBuilder b, Decision d)
 After calling DecisionBuilder::Next, along with the returned decision. More...
 
void applyDecision (Decision d)
 Before applying the decision. More...
 
void afterDecision (Decision d, boolean apply)
 Just after refuting or applying the decision, apply is true after Apply. More...
 
void beginFail ()
 Just when the failure occurs. More...
 
void endFail ()
 After completing the backtrack. More...
 
void beginInitialPropagation ()
 Before the initial propagation. More...
 
void endInitialPropagation ()
 After the initial propagation. More...
 
boolean acceptSolution ()
 This method is called when a solution is found. More...
 
boolean atSolution ()
 This method is called when a valid solution is found. More...
 
void noMoreSolutions ()
 When the search tree is finished. More...
 
boolean localOptimum ()
 When a local optimum is reached. More...
 
boolean acceptDelta (Assignment delta, Assignment deltadelta)
 
void acceptNeighbor ()
 After accepting a neighbor during local search. More...
 
void AcceptUncheckedNeighbor ()
 After accepting an unchecked neighbor during local search. More...
 
boolean IsUncheckedSolutionLimitReached ()
 Returns true if the limit of solutions has been reached including unchecked solutions. More...
 
Solver solver ()
 
int progressPercent ()
 Returns a percentage representing the propress of the search before reaching limits. More...
 
void accept (ModelVisitor visitor)
 Accepts the given model visitor. More...
 
void install ()
 Registers itself on the solver such that it gets notified of the search and propagation events. More...
 

Static Public Attributes

static final int kNoProgress = mainJNI.SearchMonitor_kNoProgress_get()
 

Protected Member Functions

 SearchLimit (long cPtr, boolean cMemoryOwn)
 
void swigDirectorDisconnect ()
 

Constructor & Destructor Documentation

◆ SearchLimit()

SearchLimit ( long  cPtr,
boolean  cMemoryOwn 
)
inlineprotected

Definition at line 17 of file SearchLimit.java.

Member Function Documentation

◆ accept()

void accept ( ModelVisitor  visitor)
inlineinherited

Accepts the given model visitor.

Reimplemented in RegularLimit, and OptimizeVar.

Definition at line 221 of file SearchMonitor.java.

◆ acceptDelta()

boolean acceptDelta ( Assignment  delta,
Assignment  deltadelta 
)
inlineinherited

Reimplemented in OptimizeVar.

Definition at line 174 of file SearchMonitor.java.

◆ acceptNeighbor()

void acceptNeighbor ( )
inlineinherited

After accepting a neighbor during local search.

Definition at line 181 of file SearchMonitor.java.

◆ acceptSolution()

boolean acceptSolution ( )
inlineinherited

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.

Definition at line 149 of file SearchMonitor.java.

◆ AcceptUncheckedNeighbor()

void AcceptUncheckedNeighbor ( )
inlineinherited

After accepting an unchecked neighbor during local search.

Reimplemented in SearchLog.

Definition at line 188 of file SearchMonitor.java.

◆ afterDecision()

void afterDecision ( Decision  d,
boolean  apply 
)
inlineinherited

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.

Definition at line 114 of file SearchMonitor.java.

◆ applyDecision()

void applyDecision ( Decision  d)
inlineinherited

Before applying the decision.

Reimplemented in SearchLog.

Definition at line 100 of file SearchMonitor.java.

◆ atSolution()

boolean atSolution ( )
inlineinherited

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.

Definition at line 156 of file SearchMonitor.java.

◆ beginFail()

void beginFail ( )
inlineinherited

Just when the failure occurs.

Reimplemented in SearchLog.

Definition at line 121 of file SearchMonitor.java.

◆ beginInitialPropagation()

void beginInitialPropagation ( )
inlineinherited

Before the initial propagation.

Reimplemented in SearchLog.

Definition at line 135 of file SearchMonitor.java.

◆ beginNextDecision()

void beginNextDecision ( DecisionBuilder  b)
inline

Before calling DecisionBuilder::Next.

Reimplemented from SearchMonitor.

Definition at line 85 of file SearchLimit.java.

◆ check()

boolean check ( )
inline

This method is called to check the status of the limit.

A return value of true indicates that we have indeed crossed the limit. In that case, this method will not be called again and the remaining search will be discarded.

Reimplemented in RegularLimit.

Definition at line 52 of file SearchLimit.java.

◆ copy()

void copy ( SearchLimit  limit)
inline

Copy a limit.

Warning: leads to a direct (no check) downcasting of 'limit' so one needs to be sure both SearchLimits are of the same type.

Reimplemented in RegularLimit.

Definition at line 66 of file SearchLimit.java.

◆ crossed()

boolean crossed ( )
inline

Returns true if the limit has been crossed.

Definition at line 45 of file SearchLimit.java.

◆ delete()

synchronized void delete ( )
inline

Reimplemented from SearchMonitor.

Reimplemented in RegularLimit.

Definition at line 31 of file SearchLimit.java.

◆ endFail()

void endFail ( )
inlineinherited

After completing the backtrack.

Definition at line 128 of file SearchMonitor.java.

◆ endInitialPropagation()

void endInitialPropagation ( )
inlineinherited

After the initial propagation.

Reimplemented in SearchLog.

Definition at line 142 of file SearchMonitor.java.

◆ endNextDecision()

void endNextDecision ( DecisionBuilder  b,
Decision  d 
)
inlineinherited

After calling DecisionBuilder::Next, along with the returned decision.

Definition at line 93 of file SearchMonitor.java.

◆ enterSearch()

void enterSearch ( )
inline

Internal methods.

Reimplemented from SearchMonitor.

Definition at line 81 of file SearchLimit.java.

◆ exitSearch()

void exitSearch ( )
inlineinherited

End of the search.

Reimplemented in RegularLimit, and SearchLog.

Definition at line 79 of file SearchMonitor.java.

◆ init()

void init ( )
inline

This method is called when the search limit is initialized.

Reimplemented in RegularLimit.

Definition at line 59 of file SearchLimit.java.

◆ install()

void install ( )
inlineinherited

Registers itself on the solver such that it gets notified of the search and propagation events.

Reimplemented in PropagationMonitor, and LocalSearchMonitor.

Definition at line 228 of file SearchMonitor.java.

◆ IsUncheckedSolutionLimitReached()

boolean IsUncheckedSolutionLimitReached ( )
inlineinherited

Returns true if the limit of solutions has been reached including unchecked solutions.

Reimplemented in RegularLimit.

Definition at line 195 of file SearchMonitor.java.

◆ localOptimum()

boolean localOptimum ( )
inlineinherited

When a local optimum is reached.

If 'true' is returned, the last solution is discarded and the search proceeds with the next one.

Definition at line 170 of file SearchMonitor.java.

◆ makeClone()

SearchLimit makeClone ( )
inline

Allocates a clone of the limit.

Reimplemented in RegularLimit.

Definition at line 73 of file SearchLimit.java.

◆ noMoreSolutions()

void noMoreSolutions ( )
inlineinherited

When the search tree is finished.

Reimplemented in SearchLog.

Definition at line 163 of file SearchMonitor.java.

◆ periodicCheck()

void periodicCheck ( )
inline

Periodic call to check limits in long running methods.

Reimplemented from SearchMonitor.

Definition at line 89 of file SearchLimit.java.

◆ progressPercent()

int progressPercent ( )
inlineinherited

Returns a percentage representing the propress of the search before reaching limits.

Reimplemented in RegularLimit.

Definition at line 214 of file SearchMonitor.java.

◆ refuteDecision()

void refuteDecision ( Decision  d)
inline

Before refuting the decision.

Reimplemented from SearchMonitor.

Definition at line 93 of file SearchLimit.java.

◆ restartSearch()

void restartSearch ( )
inlineinherited

Restart the search.

Definition at line 72 of file SearchMonitor.java.

◆ solver()

Solver solver ( )
inlineinherited

Definition at line 199 of file SearchMonitor.java.

◆ swigDirectorDisconnect()

void swigDirectorDisconnect ( )
inlineprotectedinherited

Definition at line 42 of file SearchMonitor.java.

◆ swigReleaseOwnership()

void swigReleaseOwnership ( )
inlineinherited

Definition at line 47 of file SearchMonitor.java.

◆ swigTakeOwnership()

void swigTakeOwnership ( )
inlineinherited

Definition at line 52 of file SearchMonitor.java.

◆ toString()

String toString ( )
inline

Reimplemented from BaseObject.

Reimplemented in RegularLimit.

Definition at line 97 of file SearchLimit.java.

Member Data Documentation

◆ kNoProgress

final int kNoProgress = mainJNI.SearchMonitor_kNoProgress_get()
staticinherited

Definition at line 232 of file SearchMonitor.java.


The documentation for this class was generated from the following file: