Class ClosedModel
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic NetworkTwo-class FCFS network demonstrating First-Come-First-Served scheduling.static NetworkTwo-class LCFSPR network demonstrating Last-Come-First-Served Preemptive Resume.static NetworkSimple two-class PS network for processor sharing demonstration.static NetworkTwo-class closed network with LCFS and LCFSPR scheduling.static NetworkCreates a closed queueing network with LCFS and LCFSPR scheduling - 3 class variant.static NetworkCreates a closed queueing network with LCFS and LCFSPR scheduling - 4 class variant.static NetworkAPH service distributions with complex routing patterns.static NetworkFour-class closed network with multiple FCFS queues.static NetworkTwo-class closed network with four-node cyclic topology.static NetworkSimple closed network with a delay node and FCFS queue.static NetworkTwo-class closed network with multi-server queue.static NetworkMixed scheduling strategies with probabilistic routing.static NetworkThree-class closed network with multi-server PS queue.static NetworkClosed network with class switching using probabilistic routing.static NetworkTwo-class closed network with class switching.static NetworkSingle-class closed network with reducible routing matrix.static NetworkTwo-class three-node closed network with serial topology.static voidMain method for testing and demonstrating closed model examples.
-
Constructor Details
-
ClosedModel
public ClosedModel()
-
-
Method Details
-
cqn_repairmen
Simple closed network with a delay node and FCFS queue.Features: - Single closed class with 10 jobs - Delay node with exponential service (mean 1.0) - FCFS queue with exponential service (mean 1.5) - Probabilistic routing: 70% self-loop at delay, 30% to queue
- Returns:
- configured closed network model
-
cqn_twoclass_hyperl
Two-class closed network with class switching.Features: - Two closed classes with 2 jobs each - Delay node with Erlang and HyperExp distributions - PS (Processor Sharing) queue - Class switching between Class1 and Class2
- Returns:
- configured closed network model
-
cqn_threeclass_hyperl
Three-class closed network with multi-server PS queue.Features: - Three closed classes with populations [2, 0, 1] - Two-server PS queue - Mixed service distributions (Erlang, HyperExp, Exp) - Complex class switching patterns - Uses circular routing matrix for Class3
- Returns:
- configured closed network model
-
cqn_multiserver
Four-class closed network with multiple FCFS queues.Features: - Four closed classes with populations [2, 2, 2, 1] - Three nodes: Delay, Queue1 (3 servers), Queue2 (3 servers) - Queue2 disabled for Class1 and Class2 - Complex class switching topology - Mix of exponential and Erlang service distributions
- Returns:
- configured closed network model
-
cqn_oneline
Two-class closed network with four-node cyclic topology.Features: - Two closed classes with populations [1, 2] - Four nodes: two delays and two PS queues - Cyclic routing: Delay1 → Delay2 → Queue1 → Queue2 → Delay1 - Different service rates for each class-node combination - Uses Network.cyclicPsInf(N,D,Z) with: - D = [10,5; 5,9] (Queue service times) - Z = [91,92; 93,94] (Delay times) - N = [1,2] (Population)
- Returns:
- configured closed network model
-
cqn_twoclass_erl
Closed network with class switching using probabilistic routing.Features: - Two closed classes with populations [15, 5] - ClassSwitch node with class switching matrix [0,1;1,0] - Mixed scheduling: PS queues and infinite server delay - Probabilistic routing strategies (RAND, RROBIN, WRROBIN) - Demonstrates advanced routing configuration
- Returns:
- configured closed network model
-
cqn_bcmp_theorem_fcfs
Two-class FCFS network demonstrating First-Come-First-Served scheduling.Features: - Two closed classes with 2 jobs each - Delay node with Erlang and HyperExp distributions - FCFS queue with exponential service - Simple serial routing between delay and queue
- Returns:
- configured closed network model
-
cqn_bcmp_theorem_lcfspr
Two-class LCFSPR network demonstrating Last-Come-First-Served Preemptive Resume.Features: - Two closed classes with 2 jobs each - Delay node with APH (Acyclic Phase-type) distributions - LCFSPR queue with preemptive resume scheduling - Different SCV values for delay services
- Returns:
- configured closed network model
-
cqn_bcmp_theorem_ps
Simple two-class PS network for processor sharing demonstration.Features: - Two closed classes with 2 jobs each - Delay node with Erlang and HyperExp distributions - PS queue with exponential service for both classes - Simple serial routing between delay and queue
- Returns:
- configured closed network model
-
cqn_repairmen_multi
Two-class closed network with multi-server queue.Features: - Two closed classes with populations [4, 2] - Delay node with exponential service for both classes - FCFS queue with 3 servers - Different service rates (Class2 has 10x faster service)
- Returns:
- configured closed network model
-
cqn_twoqueues_multi
Two-class three-node closed network with serial topology.Features: - Two closed classes with 10 jobs each - Three nodes: Delay, Queue1, Queue2 in series - All exponential service times with different rates - Cyclic routing: Delay → Queue1 → Queue2 → Delay
- Returns:
- configured closed network model
-
cqn_twoqueues
Single-class closed network with reducible routing matrix.Features: - Single closed class with 1 job - Three nodes: Delay, Queue1 (FCFS), Queue2 (FCFS) - Reducible routing matrix where Queue1 and Queue2 have self-loops - Initial routing from Delay splits between Queue1 (30%) and Queue2 (50%) - Demonstrates handling of absorbing states in routing
- Returns:
- configured closed network model
-
cqn_scheduling_dps
Mixed scheduling strategies with probabilistic routing.Features: - Two closed classes: Class1 (2 jobs), Class2 (1 job) - Three stations: Delay, PS Queue, DPS Queue - Probabilistic routing with opposite preferences per class - Class1: 30% to Queue1, 70% to Queue2 - Class2: 70% to Queue1, 30% to Queue2 - Demonstrates DPS (Discriminatory Processor Sharing) scheduling
- Returns:
- configured mixed scheduling network model
-
cqn_mmpp2_service
APH service distributions with complex routing patterns.Features: - Two closed classes (1 job each) with APH service distributions - All service times fitted using APH with specific mean and SCV values - Class1: probabilistic routing (0% self-loop, 30% Queue1, 70% Queue2) - Class2: random routing strategy - High variability service times (SCV up to 5.038) - Demonstrates APH fitting for realistic service modeling
- Returns:
- configured APH-based network model
-
cqn_lcfs_lcfspr
Two-class closed network with LCFS and LCFSPR scheduling.Features: - Two closed classes with 1 job each - Queue1 with LCFS (Last Come First Served) scheduling - Queue2 with LCFSPR (LCFS with Preemptive Resume) scheduling - Exponential service times at all stations - Cyclic routing between the two queues
- Returns:
- configured LCFS/LCFSPR network model
-
cqn_lcfs_lcfspr_3class
Creates a closed queueing network with LCFS and LCFSPR scheduling - 3 class variant. Model structure: - Queue1: LCFS (Last Come First Served) scheduling - Queue2: LCFSPR (Last Come First Served Preemptive Resume) scheduling - Three closed classes with 1 job each - Cyclic routing between the two queues Expected CTMC ground truth: Queue1, Class1: QLen=0.34369, Util=0.16883, RespT=4.0714, Tput=0.084416 Queue1, Class2: QLen=0.28527, Util=0.14752, RespT=5.8013, Tput=0.049173 Queue1, Class3: QLen=0.17611, Util=0.14794, RespT=15.476, Tput=0.01138 Queue2, Class1: QLen=0.65631, Util=0.42208, RespT=7.7747, Tput=0.084416 Queue2, Class2: QLen=0.71473, Util=0.34421, RespT=14.535, Tput=0.049173 Queue2, Class3: QLen=0.82389, Util=0.12518, RespT=72.401, Tput=0.01138- Returns:
- configured 3-class LCFS/LCFSPR network model
-
cqn_lcfs_lcfspr_4class
Creates a closed queueing network with LCFS and LCFSPR scheduling - 4 class variant. Model structure: - Queue1: LCFS (Last Come First Served) scheduling - Queue2: LCFSPR (Last Come First Served Preemptive Resume) scheduling - Four closed classes with 1 job each - Cyclic routing between the two queues Expected CTMC ground truth: Queue1, Class1: QLen=0.3969, Util=0.1551, RespT=5.1181, Tput=0.077549 Queue1, Class2: QLen=0.33858, Util=0.13422, RespT=7.5679, Tput=0.044739 Queue1, Class3: QLen=0.19303, Util=0.12099, RespT=20.741, Tput=0.0093067 Queue1, Class4: QLen=0.14419, Util=0.095919, RespT=25.555, Tput=0.0056423 Queue2, Class1: QLen=0.6031, Util=0.38774, RespT=7.777, Tput=0.077549 Queue2, Class2: QLen=0.66142, Util=0.31317, RespT=14.784, Tput=0.044739 Queue2, Class3: QLen=0.80697, Util=0.10237, RespT=86.709, Tput=0.0093067 Queue2, Class4: QLen=0.85581, Util=0.1072, RespT=151.68, Tput=0.0056423- Returns:
- configured 4-class LCFS/LCFSPR network model
-
main
Main method for testing and demonstrating closed model examples.Currently configured to run cqn_threeclass_hyperl() and solve it using the JMT solver to display system-level metrics.
- Parameters:
args- command line arguments (not used)- Throws:
Exception- if solver encounters an error
-