Class ClosedExamples
-
- All Implemented Interfaces:
public class ClosedExamples
Closed queueing network examples mirroring the Kotlin notebooks in closedQN.
This class contains Java implementations that mirror the Kotlin notebook examples found in jar/src/main/kotlin/jline/examples/kotlin/basic/closedQN/. Each method demonstrates a specific closed queueing network concept using models from the basic package.
The examples cover: - BCMP theorem validation with different scheduling strategies - Multi-server systems and repairman models - Various service distributions (Erlang, Hyperexponential, MMPP) - Discriminatory processor sharing (DPS) scheduling - Multi-class systems with complex routing - One-line network specifications
-
-
Constructor Summary
Constructors Constructor Description ClosedExamples()
-
Method Summary
Modifier and Type Method Description static void
cqn_bcmp_theorem()
BCMP theorem validation example (cqn_bcmp_theorem.ipynb). static void
cqn_mmpp2_service()
MMPP2 service process example (cqn_mmpp2_service.ipynb). static void
cqn_multiserver()
Multi-server closed network (cqn_multiserver.ipynb). static void
cqn_oneline()
One-line closed network specification (cqn_oneline.ipynb). static void
cqn_repairmen()
Repairman model (cqn_repairmen.ipynb). static void
cqn_repairmen_multi()
Multi-class repairman model (cqn_repairmen_multi.ipynb). static void
cqn_scheduling_dps()
Discriminatory processor sharing (cqn_scheduling_dps.ipynb). static void
cqn_threeclass_hyperl()
Three-class hyperexponential system (cqn_threeclass_hyperl.ipynb). static void
cqn_twoclass_erl()
Two-class Erlang system (cqn_twoclass_erl.ipynb). static void
cqn_twoclass_hyperl()
Two-class hyperexponential system (cqn_twoclass_hyperl.ipynb). static void
cqn_twoqueues()
Two queues with reducible routing (cqn_twoqueues.ipynb). static void
cqn_twoqueues_multi()
Two queues with multi-class system (cqn_twoqueues_multi.ipynb). static void
main(Array<String> args)
Main method demonstrating all closed queueing network examples. -
-
Method Detail
-
cqn_bcmp_theorem
static void cqn_bcmp_theorem()
BCMP theorem validation example (cqn_bcmp_theorem.ipynb).
Demonstrates the BCMP theorem by comparing different scheduling strategies (PS, FCFS, LCFS-PR) and showing that certain performance measures remain invariant.
Features: - Multiple job classes (2 classes, 2 jobs each) in closed network - Comparison of PS, FCFS, and LCFS-PR scheduling strategies - Validation of product-form solution properties - Uses CTMC solver for exact analysis
-
cqn_mmpp2_service
static void cqn_mmpp2_service()
MMPP2 service process example (cqn_mmpp2_service.ipynb).
Demonstrates the use of Markov Modulated Poisson Process (MMPP) service distributions in closed networks.
Features: - MMPP2 service process with state-dependent rates - Bursty service patterns with correlation - Closed network with complex service behavior - Performance analysis under correlated service
-
cqn_multiserver
static void cqn_multiserver()
Multi-server closed network (cqn_multiserver.ipynb).
Demonstrates closed networks with multi-server stations, showing capacity effects on performance.
Features: - Multiple servers at queueing stations - Capacity constraints in closed networks - Server utilization and queueing effects - Performance comparison with single-server systems
-
cqn_oneline
static void cqn_oneline()
One-line closed network specification (cqn_oneline.ipynb).
Demonstrates compact specification of closed networks using matrix-based constructors.
Features: - Matrix-based closed network constructor - N vector defines job populations per class - S matrix defines service times at stations - Compact notation for standard topologies
-
cqn_repairmen
static void cqn_repairmen()
Repairman model (cqn_repairmen.ipynb).
Demonstrates the classic repairman model where machines break down and compete for repair resources.
Features: - Machine population circulating between operational and repair - Limited repair capacity creates resource contention - Delay station represents operational (working) time - Queue represents repair facility with limited servers
-
cqn_repairmen_multi
static void cqn_repairmen_multi()
Multi-class repairman model (cqn_repairmen_multi.ipynb).
Extends the repairman model to multiple machine types with different failure and repair characteristics.
Features: - Multiple machine classes with different characteristics - Class-dependent failure rates and repair times - Shared repair facility for all machine types - Resource contention across machine classes
-
cqn_scheduling_dps
static void cqn_scheduling_dps()
Discriminatory processor sharing (cqn_scheduling_dps.ipynb).
Demonstrates discriminatory processor sharing (DPS) scheduling where different job classes receive different service shares.
Features: - DPS scheduling with class-dependent weights - Proportional service allocation based on class priorities - Performance differentiation across job classes - Weighted fair queueing behavior
-
cqn_threeclass_hyperl
static void cqn_threeclass_hyperl()
Three-class hyperexponential system (cqn_threeclass_hyperl.ipynb).
Demonstrates a three-class closed network with hyperexponential service distributions, showing high variability effects.
Features: - Three job classes with different populations - Hyperexponential service distributions (high variability) - Complex routing patterns across multiple stations - Performance analysis under high service variability
-
cqn_twoclass_erl
static void cqn_twoclass_erl()
Two-class Erlang system (cqn_twoclass_erl.ipynb).
Demonstrates a two-class closed network with Erlang service distributions, showing low variability effects.
Features: - Two job classes with different characteristics - Erlang service distributions (low variability) - Comparison with exponential service systems - Impact of service variability on performance
-
cqn_twoclass_hyperl
static void cqn_twoclass_hyperl()
Two-class hyperexponential system (cqn_twoclass_hyperl.ipynb).
Demonstrates a two-class closed network with hyperexponential service distributions for both classes.
Features: - Two job classes with hyperexponential service - High service variability for all classes - Performance comparison between classes - Variability effects on class interactions
-
cqn_twoqueues
static void cqn_twoqueues()
Two queues with reducible routing (cqn_twoqueues.ipynb).
Demonstrates a closed network with reducible routing matrix, containing probabilistic routing patterns.
Features: - Reducible routing matrix with probabilistic transitions - Self-loops and probabilistic routing decisions - Delay station with two queue alternatives - Analysis of routing probability effects
-
cqn_twoqueues_multi
static void cqn_twoqueues_multi()
Two queues with multi-class system (cqn_twoqueues_multi.ipynb).
Extends the two-queue model to multiple classes with different routing patterns per class.
Features: - Multiple job classes with class-specific routing - Different probabilistic patterns per class - Class interactions in shared queueing stations - Performance differentiation across classes
-
-
-
-