Package kroqbd

Object QbdUtils

  • All Implemented Interfaces:

    
    public class QbdUtils
    
                        

    Utility functions for QBD analysis

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
      public final static QbdUtils INSTANCE
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Constructor Detail

    • Method Detail

      • gg1ResponseTime

         final static Double gg1ResponseTime(Double arrivalMean, Double arrivalSCV, Double serviceMean, Double serviceSCV, Double rho)

        Calculate G/G/1 response time using Kingman's approximation

        Parameters:
        arrivalMean - Mean inter-arrival time
        arrivalSCV - Squared coefficient of variation of arrivals
        serviceMean - Mean service time
        serviceSCV - Squared coefficient of variation of service
        rho - Utilization
        Returns:

        Mean response time

      • gg1SteadyStateProb

         final static DoubleArray gg1SteadyStateProb(Double arrivalRate, Double serviceRate, Double arrivalSCV, Double serviceSCV, Integer maxQueueLength)

        Calculate steady-state queue length probabilities for G/G/1

        Parameters:
        arrivalRate - Arrival rate
        serviceRate - Service rate
        arrivalSCV - Squared coefficient of variation of arrivals
        serviceSCV - Squared coefficient of variation of service
        maxQueueLength - Maximum queue length to compute
        Returns:

        Array of queue length probabilities

      • sampleQBD

         final static IntArray sampleQBD(MatrixCell ARV, MatrixCell serviceProcess, Integer numSamples)

        Sample from a QBD process

        Parameters:
        ARV - Arrival process
        serviceProcess - Service process
        numSamples - Number of samples to generate
        Returns:

        Queue length samples

      • createMAP

         final static MatrixCell createMAP(Matrix D0, Matrix D1)

        Create a MAP representation from parameters

        Parameters:
        D0 - Sub-generator matrix
        D1 - Phase transition matrix
        Returns:

        MAP as MatrixCell

      • mapShrink

         final static MatrixCell mapShrink(MatrixCell map, Double threshold)

        Shrink a MAP by removing insignificant states

        Parameters:
        map - Input MAP
        threshold - Probability threshold for state removal
        Returns:

        Reduced MAP