Class AAnyPathInORGraphSearch<I extends org.api4.java.ai.graphsearch.problem.IPathSearchInput<N,A>,O extends SearchGraphPath<N,A>,N,A>
- java.lang.Object
-
- ai.libs.jaicore.basic.algorithm.AAlgorithm<I,O>
-
- ai.libs.jaicore.basic.algorithm.ASolutionCandidateIterator<I,O>
-
- ai.libs.jaicore.search.core.interfaces.AAnyPathInORGraphSearch<I,O,N,A>
-
- Type Parameters:
I
-N
-A
-V
-NSearch
-Asearch
-
- All Implemented Interfaces:
java.lang.Iterable<org.api4.java.algorithm.events.IAlgorithmEvent>
,java.util.concurrent.Callable<O>
,java.util.Iterator<org.api4.java.algorithm.events.IAlgorithmEvent>
,org.api4.java.ai.graphsearch.problem.IPathInORGraphSearch<I,O,N,A>
,org.api4.java.ai.graphsearch.problem.IPathSearch<I,O,N,A>
,org.api4.java.algorithm.IAlgorithm<I,O>
,org.api4.java.algorithm.ISolutionCandidateIterator<I,O>
,org.api4.java.common.control.ICancelable
,org.api4.java.common.control.ILoggingCustomizable
,org.api4.java.common.event.IEventEmitter<java.lang.Object>
,org.api4.java.common.event.IRelaxedEventEmitter
- Direct Known Subclasses:
DepthFirstSearch
,RandomSearch
public abstract class AAnyPathInORGraphSearch<I extends org.api4.java.ai.graphsearch.problem.IPathSearchInput<N,A>,O extends SearchGraphPath<N,A>,N,A> extends ai.libs.jaicore.basic.algorithm.ASolutionCandidateIterator<I,O> implements org.api4.java.ai.graphsearch.problem.IPathInORGraphSearch<I,O,N,A>
This is a template for algorithms that aim at finding paths from a root to goal nodes in a graph. This template does not assume paths to have a score. The output type of this algorithm is fixed to EvaluatedSearchGraphPath
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AAnyPathInORGraphSearch(ai.libs.jaicore.basic.IOwnerBasedAlgorithmConfig config, I problem)
AAnyPathInORGraphSearch(I problem)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.api4.java.datastructure.graph.implicit.IGraphGenerator<N,A>
getGraphGenerator()
java.lang.String
getLoggerName()
protected GraphSearchSolutionCandidateFoundEvent<N,A,O>
registerSolution(O path)
void
setLoggerName(java.lang.String name)
-
Methods inherited from class ai.libs.jaicore.basic.algorithm.ASolutionCandidateIterator
call, collectAllSolutions, nextSolutionCandidate, nextSolutionCandidateEvent
-
Methods inherited from class ai.libs.jaicore.basic.algorithm.AAlgorithm
activate, announceTimeoutDetected, avoidReinterruptionOnShutdownOnCurrentThread, cancel, checkAndConductTermination, checkTermination, computeTimeoutAware, getActivationTime, getConfig, getDeadline, getId, getInput, getListeners, getNumCPUs, getRemainingTimeToDeadline, getState, getTimeout, getTimeoutPrecautionOffset, hasNext, hasThreadBeenInterruptedDuringShutdown, interruptThreadAsPartOfShutdown, isCanceled, isShutdownInitialized, isStopCriterionSatisfied, isTimeoutDefined, isTimeouted, iterator, next, post, registerActiveThread, registerListener, resolveShutdownInterruptOnCurrentThread, setConfig, setDeadline, setMaxNumThreads, setNumCPUs, setState, setTimeout, setTimeout, setTimeoutPrecautionOffset, shutdown, terminate, unregisterActiveThread, unregisterThreadAndShutdown
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.api4.java.algorithm.IAlgorithm
call, getConfig, getId, getInput, getNumCPUs, getTimeout, nextWithException, registerListener, setMaxNumThreads, setNumCPUs, setTimeout, setTimeout
-
-
-
-
Method Detail
-
registerSolution
protected GraphSearchSolutionCandidateFoundEvent<N,A,O> registerSolution(O path)
-
getGraphGenerator
public org.api4.java.datastructure.graph.implicit.IGraphGenerator<N,A> getGraphGenerator()
-
setLoggerName
public void setLoggerName(java.lang.String name)
-
getLoggerName
public java.lang.String getLoggerName()
-
-