Class Npfqn_gtmtst_fluid

java.lang.Object
jline.api.npfqn.Npfqn_gtmtst_fluid

public final class Npfqn_gtmtst_fluid extends Object
Time-varying open network of many-server fluid queues with abandonment.

Each queue is the Gt/Mt/st+GI fluid queue of Qsys_gtmtst_fluid; the departure flow of queue i is routed to queue j with the proportion P[i][j], and whatever is left leaves the network.

THE NETWORK IS A FIXED POINT. The total arrival rate of queue j is lambda_j(t) = lambda_j^0(t) + sum_i sigma_i(t)P_ij(t) with sigma_i = mu_i B_i the service completion rate (eqs. 23-24), and sigma_i itself depends on lambda_i. The iteration starts from the external rates alone and adds one more traversal of the network per round, so the nth iterate is the fluid that has made n transitions; the map is a monotone contraction, so the rates increase to the fixed point rather than oscillating.

Only the SERVICE COMPLETION flow is routed. Abandoning fluid leaves the network, which is what makes the traffic equations linear in sigma.

Port of MATLAB npfqn_gtmtst_fluid.m.

Reference: Y. Liu, W. Whitt (2014). Algorithms for time-varying networks of many-server fluid queues. INFORMS Journal on Computing 26(1), 59-73.

Since:
LINE 3.1.0
  • Method Details

    • npfqn_gtmtst_fluid

      public static Npfqn_gtmtst_fluid.Result npfqn_gtmtst_fluid(DoubleUnaryOperator[] lambdaFuns, DoubleUnaryOperator[] sFuns, DoubleUnaryOperator[] muFuns, DoubleUnaryOperator[] patienceCcdfs, double[][] P, double T, double dt, double[] B0, double[] w0, double tol, int maxIter)
      Parameters:
      lambdaFuns - external arrival rate of each queue
      sFuns - staffing of each queue
      muFuns - service rate of each queue
      patienceCcdfs - patience ccdf of each queue
      P - routing proportions, substochastic
      T - horizon
      dt - grid step; non-positive takes T/2000
      B0 - initial fluid in service, or null for empty
      w0 - initial boundary waiting times, or null for empty
      tol - sup-norm tolerance on the arrival-rate iteration
      maxIter - cap on the iterations
      Returns:
      the network solution