Class MLPlan<L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>

  • All Implemented Interfaces:
    java.lang.Iterable<org.api4.java.algorithm.events.IAlgorithmEvent>, java.util.concurrent.Callable<L>, java.util.Iterator<org.api4.java.algorithm.events.IAlgorithmEvent>, org.api4.java.algorithm.IAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L>, 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

    public class MLPlan<L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
    extends ai.libs.jaicore.basic.algorithm.AAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L>
    implements org.api4.java.common.control.ILoggingCustomizable
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected MLPlan​(IMLPlanBuilder<L,​?> builder, org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?> data)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      L call()  
      void cancel()  
      PipelineEvaluator getClassifierEvaluatorForSearch()  
      PipelineEvaluator getClassifierEvaluatorForSelection()  
      ai.libs.jaicore.components.api.IComponentInstance getComponentInstanceOfSelectedClassifier()  
      MLPlanClassifierConfig getConfig()  
      ai.libs.hasco.core.HASCO<?,​?,​?> getHASCO()  
      double getInternalValidationErrorOfSelectedClassifier()  
      java.lang.String getLoggerName()  
      ai.libs.jaicore.components.optimizingfactory.OptimizingFactory<ai.libs.hasco.twophase.TwoPhaseSoftwareConfigurationProblem,​L,​ai.libs.hasco.core.HASCOSolutionCandidate<java.lang.Double>,​java.lang.Double> getOptimizingFactory()  
      org.api4.java.algorithm.IAlgorithm<?,​?> getSearch()  
      org.api4.java.ai.graphsearch.problem.IPathSearchInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,​java.lang.String> getSearchProblemInputGenerator()  
      L getSelectedClassifier()  
      ai.libs.hasco.builder.TwoPhaseHASCOBuilder<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,​java.lang.String> getTwoPhaseHASCOFactory()  
      boolean isBuildSelectedClasifierOnGivenData()  
      org.api4.java.algorithm.events.IAlgorithmEvent nextWithException()  
      void receiveEvent​(org.api4.java.common.event.IEvent e)  
      void setBuildSelectedClasifierOnGivenData​(boolean buildSelectedClasifierOnGivenData)  
      void setLoggerName​(java.lang.String name)  
      void setPortionOfDataForPhase2​(double portion)  
      void setRandomSeed​(int seed)  
      • Methods inherited from class ai.libs.jaicore.basic.algorithm.AAlgorithm

        activate, announceTimeoutDetected, avoidReinterruptionOnShutdownOnCurrentThread, checkAndConductTermination, checkTermination, computeTimeoutAware, getActivationTime, 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 java.lang.Iterable

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

        forEachRemaining, remove
    • Constructor Detail

      • MLPlan

        protected MLPlan​(IMLPlanBuilder<L,​?> builder,
                         org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?> data)
    • Method Detail

      • nextWithException

        public org.api4.java.algorithm.events.IAlgorithmEvent nextWithException()
                                                                         throws org.api4.java.algorithm.exceptions.AlgorithmException,
                                                                                java.lang.InterruptedException,
                                                                                org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException,
                                                                                org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
        Specified by:
        nextWithException in interface org.api4.java.algorithm.IAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
        Throws:
        org.api4.java.algorithm.exceptions.AlgorithmException
        java.lang.InterruptedException
        org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException
        org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
      • call

        public L call()
               throws org.api4.java.algorithm.exceptions.AlgorithmException,
                      java.lang.InterruptedException,
                      org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException,
                      org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
        Specified by:
        call in interface java.util.concurrent.Callable<L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
        Specified by:
        call in interface org.api4.java.algorithm.IAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
        Throws:
        org.api4.java.algorithm.exceptions.AlgorithmException
        java.lang.InterruptedException
        org.api4.java.algorithm.exceptions.AlgorithmExecutionCanceledException
        org.api4.java.algorithm.exceptions.AlgorithmTimeoutedException
      • setLoggerName

        public void setLoggerName​(java.lang.String name)
        Specified by:
        setLoggerName in interface org.api4.java.common.control.ILoggingCustomizable
        Overrides:
        setLoggerName in class ai.libs.jaicore.basic.algorithm.AAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
      • setPortionOfDataForPhase2

        public void setPortionOfDataForPhase2​(double portion)
      • getLoggerName

        public java.lang.String getLoggerName()
        Specified by:
        getLoggerName in interface org.api4.java.common.control.ILoggingCustomizable
        Overrides:
        getLoggerName in class ai.libs.jaicore.basic.algorithm.AAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
      • getConfig

        public MLPlanClassifierConfig getConfig()
        Specified by:
        getConfig in interface org.api4.java.algorithm.IAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
        Overrides:
        getConfig in class ai.libs.jaicore.basic.algorithm.AAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
      • setRandomSeed

        public void setRandomSeed​(int seed)
      • getSelectedClassifier

        public L getSelectedClassifier()
      • getComponentInstanceOfSelectedClassifier

        public ai.libs.jaicore.components.api.IComponentInstance getComponentInstanceOfSelectedClassifier()
      • getSearchProblemInputGenerator

        public org.api4.java.ai.graphsearch.problem.IPathSearchInput<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,​java.lang.String> getSearchProblemInputGenerator()
      • getInternalValidationErrorOfSelectedClassifier

        public double getInternalValidationErrorOfSelectedClassifier()
      • cancel

        public void cancel()
        Specified by:
        cancel in interface org.api4.java.common.control.ICancelable
        Overrides:
        cancel in class ai.libs.jaicore.basic.algorithm.AAlgorithm<org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<?>,​L extends org.api4.java.ai.ml.core.learner.ISupervisedLearner<org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance,​org.api4.java.ai.ml.core.dataset.supervised.ILabeledDataset<? extends org.api4.java.ai.ml.core.dataset.supervised.ILabeledInstance>>>
      • getOptimizingFactory

        public ai.libs.jaicore.components.optimizingfactory.OptimizingFactory<ai.libs.hasco.twophase.TwoPhaseSoftwareConfigurationProblem,​L,​ai.libs.hasco.core.HASCOSolutionCandidate<java.lang.Double>,​java.lang.Double> getOptimizingFactory()
      • getHASCO

        public ai.libs.hasco.core.HASCO<?,​?,​?> getHASCO()
      • getSearch

        public org.api4.java.algorithm.IAlgorithm<?,​?> getSearch()
      • getClassifierEvaluatorForSearch

        public PipelineEvaluator getClassifierEvaluatorForSearch()
      • getClassifierEvaluatorForSelection

        public PipelineEvaluator getClassifierEvaluatorForSelection()
      • receiveEvent

        public void receiveEvent​(org.api4.java.common.event.IEvent e)
      • getTwoPhaseHASCOFactory

        public ai.libs.hasco.builder.TwoPhaseHASCOBuilder<ai.libs.jaicore.planning.hierarchical.algorithms.forwarddecomposition.graphgenerators.tfd.TFDNode,​java.lang.String> getTwoPhaseHASCOFactory()
      • isBuildSelectedClasifierOnGivenData

        public boolean isBuildSelectedClasifierOnGivenData()
      • setBuildSelectedClasifierOnGivenData

        public void setBuildSelectedClasifierOnGivenData​(boolean buildSelectedClasifierOnGivenData)