Class Pfqn_mvasjn

java.lang.Object
jline.api.pfqn.mva.Pfqn_mvasjn

public final class Pfqn_mvasjn extends Object
  • Method Details

    • pfqn_mvasjn

      public static Pfqn_mvasjn.Result pfqn_mvasjn(Matrix L, Matrix N, Matrix Z, Matrix scv, int[] sjnset, Matrix V, SjnOptions options)
      Mean value analysis with shortest-job-next stations, over the whole population lattice.

      The SJN station is modelled by the conditional waiting time W(x,n) of a tagged customer whose service requirement is x, obtained from the arrival theorem as the sum of the residual life of the job in service, the work of the queued jobs that will be served before the tagged one, and the work of the jobs that overtake it while it waits:

         W(x,n) = [ (1+CV^2) s U(n-1)/2 + X(n-1) phi(x,n-1) ] / [ 1 - X(n-1) theta(x) ]
         theta(x) = int_0^x t f(t) dt,   phi(x,n) = int_0^x W(t,n) t f(t) dt
         R(n) = s + int_0^inf W(x,n) f(x) dx
       

      The recursion is explicit: W(.,n) needs only phi(.,n-1), so it is carried alongside the population recursion of exact MVA. This costs prod(N+1) steps; Pfqn_amvasjn is the fixed-point counterpart that trades the lattice for a Schweitzer closure on the same profile.

      The service time density is not an input: only its mean and squared coefficient of variation are, and the density is reconstructed by the two-moment Erlang-mixture fit the reference prescribes. The x-integrals run on a fixed grid by composite Simpson, W(.,n) being needed at the next population so that quadrature rules sampling at arbitrary abscissae cannot be used; beyond the grid the profile is closed by the analytic tail W(x,n) = a - b exp(-c (x - Lx)).

      Parameters:
      L - service demand matrix (M x R) of the queueing stations
      N - population vector (1 x R)
      Z - think time vector (1 x R), may be null
      scv - squared coefficients of variation of the service times (M x R), may be null
      sjnset - zero-based indices of the stations scheduling by SJN, may be null
      V - visit ratios (M x R), so that the per-visit service time is L./V, may be null
      options - grid, priority and cap options, may be null
      Returns:
      mean performance measures and the conditional waiting time profiles