Class SolverMVA

Direct Known Subclasses:
MVA

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.
  • Constructor Details

    • SolverMVA

      public 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

      public 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

      public SolverMVA(Network model, 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

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

    • defaultOptions

      public static SolverOptions defaultOptions()
      Returns the default solver options for the MVA solver.
      Returns:
      Default solver options with SolverType.MVA
    • getFeatureSet

      public static FeatureSet getFeatureSet()
      Returns the feature set supported by the MVA solver
      Returns:
      - the feature set supported by the MVA solver
    • getStruct

      public 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

      public void setStruct(NetworkStruct sn)
      Sets the network structure for this solver.
      Parameters:
      sn - The network structure to use
    • runAnalyzer

      public void runAnalyzer() throws IllegalAccessException
      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.
      Specified by:
      runAnalyzer in class Solver
      Throws:
      IllegalAccessException - if there are access issues during analysis
    • supports

      public boolean supports(Network model)
      Checks whether the given model is supported by the MVA solver
      Overrides:
      supports in class Solver
      Parameters:
      model - - the network model
      Returns:
      - true if the model is supported, false otherwise
    • getProbNormConstAggr

      public Ret.ProbabilityResult getProbNormConstAggr()
      Returns the logarithm of the normalizing constant for the aggregate state probabilities
      Overrides:
      getProbNormConstAggr in class NetworkSolver
      Returns:
      the log of the normalizing constant
    • getProbAggr

      public Ret.ProbabilityResult getProbAggr(int ist)
      Get marginal state probabilities for a specific station
      Overrides:
      getProbAggr in class NetworkSolver
      Parameters:
      ist - station index (0-based)
      Returns:
      ProbabilityResult with probability and log probability
    • getProbSysAggr

      public Ret.ProbabilityResult getProbSysAggr()
      Get joint system state probabilities
      Overrides:
      getProbSysAggr in class NetworkSolver
      Returns:
      ProbabilityResult with probability and log probability
    • getProbMarg

      public Ret.ProbabilityResult getProbMarg(int ist, int jobclass)
      Get marginalized state probabilities for a specific station and job class
      Overrides:
      getProbMarg in class NetworkSolver
      Parameters:
      ist - station index (0-based)
      jobclass - job class index (0-based)
      Returns:
      ProbabilityResult with marginalized state probabilities
    • getProbMarg

      public Ret.ProbabilityResult getProbMarg(int ist, int jobclass, Matrix state_m)
      Get marginalized state probabilities for a specific station and job class with state filter
      Overrides:
      getProbMarg in class NetworkSolver
      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

      public String[] listValidMethods()
      List all valid solution methods supported by this solver
      Returns:
      array of valid method names