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

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      ClosedExamples()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • 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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ClosedExamples

        ClosedExamples()
    • 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

      • main

         static void main(Array<String> args)

        Main method demonstrating all closed queueing network examples.

        Executes all example methods to showcase the different closed network concepts and solution approaches available in LINE.

        Parameters:
        args - command line arguments (not used)