Class LogisticCore

java.lang.Object
solvers.queueingnet.montecarloLogistic.solver.LogisticCore
Direct Known Subclasses:
LogisticCoreAdd, LogisticCoreMult

public abstract class LogisticCore extends Object
Implements the core Logistic Sampling algorithm by calling the required stationary point calculations, Hessian calculations, and the correct integration scheme for solution of the model, to calculate the NC. See Ong 2018. Subclassed by the additive and multiplicative core, which are responsible for choosing the correct logistic functions for use by the core algorithm
  • Field Details

    • demands

      protected cern.colt.matrix.DoubleMatrix2D demands
    • delays

      protected cern.colt.matrix.DoubleMatrix1D delays
    • has_delay

      protected boolean has_delay
    • has_multi

      protected boolean has_multi
    • sigma

      protected double sigma
    • pop

      protected cern.colt.matrix.DoubleMatrix1D pop
    • serv

      protected cern.colt.matrix.DoubleMatrix1D serv
    • N

      protected int N
    • K

      protected int K
    • R

      protected int R
    • epsilon

      protected double epsilon
    • x_stat

      protected cern.colt.matrix.DoubleMatrix1D x_stat
    • hess

      protected cern.colt.matrix.DoubleMatrix2D hess
    • cov

      protected cern.colt.matrix.DoubleMatrix2D cov
    • invalid_model

      protected boolean invalid_model
    • zero_population

      protected boolean zero_population
    • A

      protected cern.colt.matrix.linalg.Algebra A
    • MCI

      protected MCIntegrator MCI
    • F

      protected LogisticFunctionBase F
    • MC

      protected MathContext MC
  • Constructor Details

  • Method Details

    • initialize_logistic_function

      protected abstract LogisticFunctionBase initialize_logistic_function() throws InternalErrorException
      Throws:
      InternalErrorException
    • calculateNC

      public BigDecimal calculateNC() throws InternalErrorException
      Calculate the NC, and multiply by the appropriate coefficients. Details see Casale 2017 and Ong 2018
      Returns:
      The Normalising constant in BigDecimal form
      Throws:
      InternalErrorException
    • getHessian

      public double[][] getHessian()
      Get Hessian
      Returns:
    • getCovariance

      public double[][] getCovariance()
    • getStationaryPoint

      public double[] getStationaryPoint()
    • getStationaryPointSimplex

      public double[] getStationaryPointSimplex()
    • is_invalid_model

      public boolean is_invalid_model()