Class ASamplingAlgorithm<I,​D extends IDataset<I>>

  • All Implemented Interfaces:
    ai.libs.jaicore.basic.algorithm.IAlgorithm<D,​D>, ai.libs.jaicore.basic.Cancelable, ai.libs.jaicore.basic.ILoggingCustomizable, ISamplingAlgorithm<D>, java.lang.Iterable<ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent>, java.util.concurrent.Callable<D>, java.util.Iterator<ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent>
    Direct Known Subclasses:
    CaseControlLikeSampling, ClusterSampling, SimpleRandomSampling, StratifiedSampling, SystematicSampling

    public abstract class ASamplingAlgorithm<I,​D extends IDataset<I>>
    extends ai.libs.jaicore.basic.algorithm.AAlgorithm<D,​D>
    implements ISamplingAlgorithm<D>
    An abstract class for sampling algorithms providing basic functionality of an algorithm.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected D sample  
      protected java.lang.Integer sampleSize  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected ASamplingAlgorithm​(D input)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      D call()  
      protected ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent doInactiveStep()  
      D getComplement()
      Gets the data point contained in the original data that are not part of the
      void setSampleSize​(int size)  
      • Methods inherited from class ai.libs.jaicore.basic.algorithm.AAlgorithm

        activate, announceTimeoutDetected, avoidReinterruptionOnShutdownOnCurrentThread, cancel, checkAndConductTermination, checkTermination, computeTimeoutAware, getActivationTime, getConfig, getId, getInput, getLoggerName, getNumCPUs, getRemainingTimeToDeadline, getState, getTimeout, getTimeoutPrecautionOffset, hasNext, hasThreadBeenInterruptedDuringShutdown, interruptThreadAsPartOfShutdown, isCanceled, isShutdownInitialized, isStopCriterionSatisfied, isTimeouted, iterator, next, post, registerActiveThread, registerListener, resolveShutdownInterruptOnCurrentThread, setConfig, setLoggerName, 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 ai.libs.jaicore.basic.Cancelable

        cancel
      • Methods inherited from interface ai.libs.jaicore.basic.algorithm.IAlgorithm

        getConfig, getId, getInput, getNumCPUs, getTimeout, nextWithException, registerListener, setMaxNumThreads, setNumCPUs, setTimeout, setTimeout
      • Methods inherited from interface java.lang.Iterable

        forEach, iterator, spliterator
      • Methods inherited from interface java.util.Iterator

        forEachRemaining, hasNext, next, remove
    • Field Detail

      • sampleSize

        protected java.lang.Integer sampleSize
    • Constructor Detail

      • ASamplingAlgorithm

        protected ASamplingAlgorithm​(D input)
    • Method Detail

      • setSampleSize

        public void setSampleSize​(int size)
      • call

        public D call()
               throws java.lang.InterruptedException,
                      ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException,
                      ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException,
                      ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
        Specified by:
        call in interface java.util.concurrent.Callable<I>
        Specified by:
        call in interface ai.libs.jaicore.basic.algorithm.IAlgorithm<I,​D extends IDataset<I>>
        Throws:
        java.lang.InterruptedException
        ai.libs.jaicore.basic.algorithm.AlgorithmExecutionCanceledException
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmTimeoutedException
      • doInactiveStep

        protected ai.libs.jaicore.basic.algorithm.events.AlgorithmEvent doInactiveStep()
                                                                                throws ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException
        Throws:
        ai.libs.jaicore.basic.algorithm.exceptions.AlgorithmException