Varying Entity Generation Times Via Feedback


This example shows a queuing system in which feedback influences the arrival rate. As more entities accumulate in the queue-server pair, the entity generator slows its arrival rate. The model illustrates how to use statistical signals not only to report data but also to control the dynamics of the simulation.

Structure of the Model

The model includes the components listed below:

  • Time Based Entity Generator block: It is a source of entities (also known as "customers" in queuing theory).

  • Interarrival Time Distribution with Discouraged Rate subsystem: It computes interarrival times for the entities in the queuing system using a variable arrival rate that depends on the following two statistical signals:

  • The #n output from the FIFO Queue block, which reports the number of entities in the queue

  • The #n output from the Single Server block, which reports the number of entities in the server (either 0 or 1 for a single server). Specifically, when k customers are in the queue-server pair, the arrival rate is $$ \alpha $$ /(k+1). In this model, $$ \alpha $$ = 1.

  • FIFO Queue block: It stores entities that have yet to be served.

  • Single Server block: It models a server whose service time has an exponential distribution.

Results and Displays

The model includes these visual ways to understand its performance:

  • A Display block that shows the average waiting time in the queue

  • A scope comparing empirical and theoretical values for the average waiting time in the queue

Theoretical Results

According to queuing theory, the mean waiting time in the queue equals

where $$ \mu $$ is the service rate and the arrival rate is 1 when the queuing system is empty.

Experimenting with the Model

Move the Service Rate Gain slider during the simulation and observe the change in the queue waiting time, shown in the Waiting Time Comparison Scope.

Related Examples


[1] Kleinrock, Leonard, Queueing Systems, Volume I: Theory, New York, Wiley, 1975.

Was this topic helpful?