public class DepthFirstStrategy extends java.lang.Object implements IStrategy
continueIfHardObjectivesFulfilled()| Constructor and Description |
|---|
DepthFirstStrategy()
Creates a new depth-first search algorithm without depth limit.
|
DepthFirstStrategy(int maxDepth)
Creates a new depth-first search algorithm with depth limit.
|
| Modifier and Type | Method and Description |
|---|---|
DepthFirstStrategy |
continueIfHardObjectivesFulfilled()
If called, the algorithm will not backtrack after the hard objectives are fulfilled, instead it goes deeper in
the search space.
|
void |
explore()
This method explores the design space as the implementation specifies.
|
void |
initStrategy(ThreadContext context)
Initializes the strategy with a specific
ThreadContext. |
void |
interruptStrategy()
The implementation of this interface should be ready to be interrupted.
|
public DepthFirstStrategy()
public DepthFirstStrategy(int maxDepth)
maxDepth - A negative maxDepth means no depth limit, zero means the checking of the initial state.public DepthFirstStrategy continueIfHardObjectivesFulfilled()
public void initStrategy(ThreadContext context)
IStrategyThreadContext.initStrategy in interface IStrategycontext - The context.public void explore()
IStrategypublic void interruptStrategy()
IStrategyIStrategy.explore() method should return ASAP.
This method is also called by the SolutionStore class if enough solutions are found.interruptStrategy in interface IStrategy