Class SearchModule

java.lang.Object
org.jacop.jasat.modules.SearchModule
All Implemented Interfaces:
SolverComponent, ExplanationListener, SolutionListener, StartStopListener

public final class SearchModule extends Object implements SolutionListener, ExplanationListener, StartStopListener
A basic searching component, which controls the solver to solve the problem
Version:
4.9
  • Field Details

  • Constructor Details

    • SearchModule

      public SearchModule()
      search implementation, without timeout (search until solution is found)
  • Method Details

    • onExplain

      public void onExplain(MapClause explanation)
      Description copied from interface: ExplanationListener
      called when the conflict clause is explained
      Specified by:
      onExplain in interface ExplanationListener
      Parameters:
      explanation - the explanation clause
    • onSolution

      public void onSolution(boolean solution)
      Description copied from interface: SolutionListener
      a handler called when a solution is found.
      Specified by:
      onSolution in interface SolutionListener
      Parameters:
      solution - true when the solution is Satisfiable, false if it is Unsatisfiable.
    • onStart

      public void onStart()
      perform search on the given solver, without limit of time. Must be called at most once after initialize() was called.
      Specified by:
      onStart in interface StartStopListener
    • onStop

      public void onStop()
      stops search
      Specified by:
      onStop in interface StartStopListener
    • search

      private void search()
      main search loop
    • initializeTask

      private void initializeTask()
      creates a thread and runs it
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • initialize

      public void initialize(Core core)
      Description copied from interface: SolverComponent
      initializes the component with the given solver. May be called only once. This method must register the component to the solver for the run.
      Specified by:
      initialize in interface SolverComponent
      Parameters:
      core - core component to initialize