Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

AbdeltwabMF/queueing-modelsim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

70 Commits

Repository files navigation

Queueing ModelSim

This software is designed to calculate the characteristics of different queues using the BMAP (Batch Markovian Arrival Process) as input, and deterministic queues characterized by units of input (i.e., customers) arriving at known points in time with fixed service intervals.

About Queueing Theory

Definition

Queueing theory is a powerful tool for analyzing the daily phenomenon of waiting in line. Learn how to define queueing theory, its origins, significance, and real-life applications.

Typical examples include:

  • Banks/supermarkets: waiting for service
  • Computers: waiting for a response
  • Public transport: waiting for a train or bus

Different Types of Queueing Systems

Also known as Kendall's Notation with the format A/B/C/D/E, where:

  • A represents the probability distribution for the arrival process
  • B represents the probability distribution for the service process
  • C represents the number of channels (servers)
  • D represents the maximum number of customers allowed in the queueing system (either being served or waiting for service)
  • E represents the maximum total number of customers

Common options for A and B are:

  • M for a Poisson arrival distribution (exponential inter-arrival distribution) or an exponential service time distribution
  • D for a deterministic or constant value
  • G for a general distribution (with known mean and variance)

If D and E are not specified, it is assumed that they are infinite.

Common symbols used include:

  • λ for the mean arrival rate
  • μ for the mean service rate

What It Does and How to Use It

Prerequisite Libraries

  • Install Python 3: sudo apt install python3
  • Install pip for Python 3: sudo apt install python3-pip
  • Install required libraries: sudo pip3 install tk matplotlib
  1. Clone or download the repository using the following command: git clone https://github.com/AbdeltwabMF/Queueing-ModelSim Clone

  2. Navigate to the Queueing-ModelSim/src directory and run python3 main.py.

    • Choose the queueing model you want to calculate: D/D/1/K, M/M/1, M/M/1/K, M/M/C, or M/M/C/K.
    • Input the arrival rate (λ) and service rates (μ).
    • Provide additional parameters such as the number of servers (C) and maximum number of entities (K or M).
    • Press "Calculate".

    Run

  3. For Deterministic Queues (D/D/1/K), a window will prompt you to choose the data you want to plot. Deterministic

Plots

The following figures depict various aspects of the queueing system:

For Stochastic Models, a window will display server utilization (rho), average entities in the system (L), average entities in queue (Lq), average time an entity spends in the system (W), and average time an entity waits in line to be served (Wq). Stochastic

License

Licensed under the GPL-3.0 License

AltStyle によって変換されたページ (->オリジナル) /