Class MDPUtils

  • All Implemented Interfaces:
    org.api4.java.common.control.ILoggingCustomizable

    public class MDPUtils
    extends java.lang.Object
    implements org.api4.java.common.control.ILoggingCustomizable
    • Constructor Summary

      Constructors 
      Constructor Description
      MDPUtils()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      <N,​A>
      N
      drawSuccessorState​(IMDP<N,​A,​?> mdp, N state, A action)  
      <N,​A>
      N
      drawSuccessorState​(IMDP<N,​A,​?> mdp, N state, A action, java.util.Random rand)  
      java.lang.String getLoggerName()  
      <N,​A>
      org.api4.java.ai.graphsearch.problem.pathsearch.pathevaluation.IEvaluatedPath<N,​A,​java.lang.Double>
      getRun​(IMDP<N,​A,​java.lang.Double> mdp, double gamma, IPolicy<N,​A> policy, java.util.Random random, java.util.function.Predicate<org.api4.java.datastructure.graph.ILabeledPath<N,​A>> stopCriterion)  
      static <N,​A>
      java.util.Collection<N>
      getStates​(IMDP<N,​A,​?> mdp)  
      static int getTimeHorizon​(double gamma, double epsilon)  
      void setLoggerName​(java.lang.String name)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MDPUtils

        public MDPUtils()
    • Method Detail

      • getStates

        public static <N,​A> java.util.Collection<N> getStates​(IMDP<N,​A,​?> mdp)
                                                             throws java.lang.InterruptedException
        Throws:
        java.lang.InterruptedException
      • drawSuccessorState

        public <N,​A> N drawSuccessorState​(IMDP<N,​A,​?> mdp,
                                                N state,
                                                A action)
                                         throws java.lang.InterruptedException
        Throws:
        java.lang.InterruptedException
      • drawSuccessorState

        public <N,​A> N drawSuccessorState​(IMDP<N,​A,​?> mdp,
                                                N state,
                                                A action,
                                                java.util.Random rand)
                                         throws java.lang.InterruptedException
        Throws:
        java.lang.InterruptedException
      • getRun

        public <N,​A> org.api4.java.ai.graphsearch.problem.pathsearch.pathevaluation.IEvaluatedPath<N,​A,​java.lang.Double> getRun​(IMDP<N,​A,​java.lang.Double> mdp,
                                                                                                                                                  double gamma,
                                                                                                                                                  IPolicy<N,​A> policy,
                                                                                                                                                  java.util.Random random,
                                                                                                                                                  java.util.function.Predicate<org.api4.java.datastructure.graph.ILabeledPath<N,​A>> stopCriterion)
                                                                                                                                           throws java.lang.InterruptedException,
                                                                                                                                                  ActionPredictionFailedException,
                                                                                                                                                  org.api4.java.common.attributedobjects.ObjectEvaluationFailedException
        Throws:
        java.lang.InterruptedException
        ActionPredictionFailedException
        org.api4.java.common.attributedobjects.ObjectEvaluationFailedException
      • getLoggerName

        public java.lang.String getLoggerName()
        Specified by:
        getLoggerName in interface org.api4.java.common.control.ILoggingCustomizable
      • setLoggerName

        public void setLoggerName​(java.lang.String name)
        Specified by:
        setLoggerName in interface org.api4.java.common.control.ILoggingCustomizable
      • getTimeHorizon

        public static int getTimeHorizon​(double gamma,
                                         double epsilon)