Class Pfqn_pas_is

java.lang.Object
jline.api.pfqn.nc.Pfqn_pas_is

public final class Pfqn_pas_is extends Object
Importance-sampling (IS) estimate of the normalizing constant of a SINGLE communicating class of a closed two-station pass-and-swap (Pinvalid input: '&S') / order-independent (OI) tandem with swap graph H (Casale, Comte and Dorsman, 2026). Monte-Carlo counterpart of the exact convolution: it estimates the same per-communicating-class constant G_C but scales to populations where the exact count-lattice convolution becomes expensive.

Two OI/Pinvalid input: '&S' stations (1 = upstream, 2 = downstream) hold all N jobs. With a non-empty swap graph the ordered-state chain is reducible; the recurrent communicating class is the set of splits of the orderings that are the linear extensions of the placement partial order induced by H. Writing D for that set of orderings and Phi_m for the balanced-fairness balance of station m, G_C = sum_{c in D} sum_{k=0..ell} Phi_1(c_{1..k}) Phi_2(c_{ell..k+1}), with Phi_m(q) = prod_p 1/mu_m(supp(q_{1..p})) (OI: depends only on support).

Auto-normalized IS (notebook generator IS_3): orderings c are drawn from D by placing, at each step, a uniformly random placement-order-minimal present class; p(c) is the product of reciprocal branching factors. Then G_C[xi] = E_{C~p}[ (sum_k xi(C,k) Phi_1 Phi_2) / p(C) ] and E[xi] = G_C[xi]/G_C[1] reuses the same samples for numerator and denominator. xi = number of class-r jobs in the prefix gives the mean queue length of class r at station 1.

Port of matlab/src/api/pfqn/pfqn_pas_is.m.

  • Method Details

    • pfqn_pas_is

      public static Pfqn_pas_is.Result pfqn_pas_is(int[] N, List<ToDoubleFunction<int[]>> mu, int[][] H, long nsamples, long seed, boolean verbose)
      Parameters:
      N - (1 x R) closed population vector (macrostate).
      mu - list of exactly two OI rank-rate handles; mu.get(m)(n) returns the total service rate of station m for the per-class support/count vector n (depends only on supp).
      H - (R x R) placement-order DAG; H[i][j] != 0 iff i precedes j. Null/all-zero => pure OI (every ordering feasible).
      nsamples - number of IS samples.
      seed - RNG seed (for reproducibility / common random numbers).
      verbose - print progress when true.