Class SolverMVA

  • All Implemented Interfaces:

    
    public class SolverMVA
    extends NetworkSolver
                        

    SolverMVA implements Mean Value Analysis (MVA) for queueing networks. MVA is an exact analytical method for computing performance measures of closed queueing networks, particularly effective for networks with product-form solutions.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      static SolverOptions defaultOptions() Returns the default solver options for the MVA solver.
      static FeatureSet getFeatureSet() Returns the feature set supported by the MVA solver
      NetworkStruct getStruct() Returns the network structure used by this solver.
      void setStruct(NetworkStruct sn) Sets the network structure for this solver.
      void runAnalyzer() Runs the MVA analyzer to solve the queueing network.
      boolean supports(Network model) Checks whether the given model is supported by the MVA solver
      Ret.ProbabilityResult getProbNormConstAggr() Returns the logarithm of the normalizing constant for the aggregate state probabilities
      Ret.ProbabilityResult getProbAggr(int ist) Get marginal state probabilities for a specific station
      Ret.ProbabilityResult getProbSysAggr() Get joint system state probabilities
      Ret.ProbabilityResult getProbMarg(int ist, int jobclass) Get marginalized state probabilities for a specific station and job class
      Ret.ProbabilityResult getProbMarg(int ist, int jobclass, Matrix state_m) Get marginalized state probabilities for a specific station and job class with state filter
      Array<String> listValidMethods() List all valid solution methods supported by this solver
      • Methods inherited from class jline.solvers.NetworkSolver

        avg, avg, avg, avgArvR, avgArvRChain, avgArvRHandles, avgChain, avgChainTable, avgChainTable, avgChainTable, avgChainTable, avgChainTable, avgChainTable, avgHandles, avgNode, avgNodeArvRChain, avgNodeChain, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeChainTable, avgNodeQLenChain, avgNodeResidTChain, avgNodeRespTChain, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTable, avgNodeTputChain, avgNodeUtilChain, avgQLen, avgQLenChain, avgQLenHandles, avgResidT, avgResidTChain, avgResidTHandles, avgRespT, avgRespTChain, avgRespTHandles, avgSys, avgSysRespT, avgSysTable, avgSysTable, avgSysTable, avgSysTput, avgTable, avgTable, avgTable, avgTable, avgTable, avgTable, avgTput, avgTputChain, avgTputHandles, avgUtil, avgUtilChain, avgUtilHandles, avgWaitT, cdfPassT, cdfPassT, cdfRespT, cdfRespT, getAllSolvers, getAvg, getAvg, getAvg, getAvgArvR, getAvgArvRChain, getAvgArvRHandles, getAvgChain, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgChainTable, getAvgHandles, getAvgNode, getAvgNodeArvRChain, getAvgNodeChain, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeChainTable, getAvgNodeQLenChain, getAvgNodeResidTChain, getAvgNodeRespTChain, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTable, getAvgNodeTputChain, getAvgNodeUtilChain, getAvgQLen, getAvgQLenChain, getAvgQLenHandles, getAvgResidT, getAvgResidTChain, getAvgResidTHandles, getAvgRespT, getAvgRespTChain, getAvgRespTHandles, getAvgSys, getAvgSys, getAvgSys, getAvgSysRespT, getAvgSysTable, getAvgSysTable, getAvgSysTable, getAvgSysTput, getAvgTable, getAvgTable, getAvgTable, getAvgTable, getAvgTable, getAvgTable, getAvgTput, getAvgTputChain, getAvgTputHandles, getAvgUtil, getAvgUtilChain, getAvgUtilHandles, getAvgWaitT, getCdfPassT, getCdfPassT, getCdfRespT, getCdfRespT, getModel, getProb, getProb, getProbAggr, getProbSys, getStageTable, getStageTable, getTranAvg, getTranCdfPassT, getTranCdfPassT, getTranCdfRespT, getTranCdfRespT, getTranHandles, hasAvgResults, hasDistribResults, hasTranResults, initHandles, model, print, prob, prob, probAggr, probAggr, probMarg, probMarg, probNormConstAggr, probSys, probSysAggr, runAnalyzerChecks, sample, sampleAggr, sampleSys, sampleSysAggr, setAvgHandles, setAvgResults, setDistribResults, setLang, setModel, setTranAvgResults, setTranHandles, setTranProb, stageTable, tranAvg, tranCdfPassT, tranCdfPassT, tranCdfRespT, tranCdfRespT, tranHandles
      • Methods inherited from class jline.solvers.Solver

        getName, getOptions, getResults, hasResults, isJavaAvailable, isValidOption, listValidOptions, parseOptions, parseOptions, reset, resetRandomGeneratorSeed, setChecks, setOptions
      • Methods inherited from class java.lang.Object

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

      • SolverMVA

        SolverMVA(Network model, String method)
        Creates a new SolverMVA instance with a specific method.
        Parameters:
        model - The network model to analyze
        method - The MVA method to use
      • SolverMVA

        SolverMVA(Network model, SolverOptions options)
        Creates a new SolverMVA instance with specific options.
        Parameters:
        model - The network model to analyze
        options - The solver options to use
      • SolverMVA

        SolverMVA(Network model, Array<Object> varargin)
        Creates a new SolverMVA instance with variable arguments for options.
        Parameters:
        model - The network model to analyze
        varargin - Variable arguments for solver options
      • SolverMVA

        SolverMVA(Network model)
        Creates a new SolverMVA instance with default options.
        Parameters:
        model - The network model to analyze
    • Method Detail

      • defaultOptions

         static SolverOptions defaultOptions()

        Returns the default solver options for the MVA solver.

        Returns:

        Default solver options with SolverType.MVA

      • getFeatureSet

         static FeatureSet getFeatureSet()

        Returns the feature set supported by the MVA solver

        Returns:

        - the feature set supported by the MVA solver

      • getStruct

         NetworkStruct getStruct()

        Returns the network structure used by this solver. If the structure is not yet initialized, it will be created from the model.

        Returns:

        The network structure

      • setStruct

         void setStruct(NetworkStruct sn)

        Sets the network structure for this solver.

        Parameters:
        sn - The network structure to use
      • runAnalyzer

         void runAnalyzer()

        Runs the MVA analyzer to solve the queueing network. This method executes the Mean Value Analysis algorithm and stores the results in the solver's result object.

      • supports

         boolean supports(Network model)

        Checks whether the given model is supported by the MVA solver

        Parameters:
        model - - the network model
        Returns:

        - true if the model is supported, false otherwise

      • getProbAggr

         Ret.ProbabilityResult getProbAggr(int ist)

        Get marginal state probabilities for a specific station

        Parameters:
        ist - station index (0-based)
        Returns:

        ProbabilityResult with probability and log probability

      • getProbMarg

         Ret.ProbabilityResult getProbMarg(int ist, int jobclass)

        Get marginalized state probabilities for a specific station and job class

        Parameters:
        ist - station index (0-based)
        jobclass - job class index (0-based)
        Returns:

        ProbabilityResult with marginalized state probabilities

      • getProbMarg

         Ret.ProbabilityResult getProbMarg(int ist, int jobclass, Matrix state_m)

        Get marginalized state probabilities for a specific station and job class with state filter

        Parameters:
        ist - station index (0-based)
        jobclass - job class index (0-based)
        state_m - marginalized state vector to query (optional, null for all states)
        Returns:

        ProbabilityResult with marginalized state probabilities

      • listValidMethods

         Array<String> listValidMethods()

        List all valid solution methods supported by this solver

        Returns:

        array of valid method names