Discrete time simulation of a queue, Data Structure & Algorithms

Assignment Help:

In this project you will write a program to produce a discrete time simulation of a queue as shown in Fig. 1. Time is slotted on the input and the output. Each input packet follows a Bernoulli process. In a given time slot the independent probability that a packet arrives in a time slot is p, while the probability that the packet will be serviced is q. One packet fills one time slot.        

1775_Queue element.png

The queue can store up to four packets (not the five shown in the diagram above). All packets are processed on a first come - first served basis. Assume that when a packet is serviced all other packets in a queue (if any) are shifted instantaneously towards the output. Each slot departures from the queue are processed before arrivals. 

In your discrete event simulation the program will mimic the operation of the queue and collect statistics. More specifically, you will need to collect (a) throughput and (b) delay statistics for different values of p (p = 0.02, 0.04 up to 1.0 in steps of 0.02), and for a fixed value of q = 0.75. To obtain an accurate statistics you should simulate at least ten thousand time slots for each value of p. Note that you ARE NOT allowed to implement the model equation in the program - but you can use them as a check.

The average throughput is just the number of serviced packets divided by the number of time slots. The average delay of the queue is an average number of time slots a packet is waiting in a queue before it gets serviced (i.e., it is the total number of time slots which all serviced packets spend in the queue divided by the total number of serviced packets). For the delay statistics, it is convenient to store your packets in a linked list and associate the time slot tag with each packet.


Related Discussions:- Discrete time simulation of a queue

#titlestrings, given the string "Data Structures & , Algorithms", write a p...

given the string "Data Structures & , Algorithms", write a program that uses sequential search to return index of ''&''

Traversing a binary search tree, Binary Search Tree let three types of trav...

Binary Search Tree let three types of traversals by its nodes. They are: Pre Order Traversal In Order Traversal Post Order Traversal In Pre Order Traversal, we ca

Algorithm to insert element to a max-heap sequentially, Q. Write  down the ...

Q. Write  down the  algorithm  to  insert  an  element  to  a  max-heap  which  is  represented sequentially.           Ans: The algorithm to insert an element "newkey" to

Conversion of forest into tree, Conversion of Forest into Tree A binary...

Conversion of Forest into Tree A binary tree may be used to show an entire forest, since the next pointer in the root of a tree can be used to point to the next tree of the for

Graphs, In this unit, we will describe a data structure called Graph. Actua...

In this unit, we will describe a data structure called Graph. Actually, graph is a general tree along no parent-child relationship. In computer science, Graphs have several applica

Implement the physat algorithm, The first assignment in this course require...

The first assignment in this course required you to acquire data to enable you to implement the PHYSAT algorithm (Alvain et al. 2005, Alvain et al. 2008) in this second assignment

Explain np-complete decision problem, a. Determine the result of inserting ...

a. Determine the result of inserting the keys 4,19, 17, 11, 3, 12, 8, 20, 22, 23, 13, 18, 14, 16, 1, 2, 24, 25, 26, 5 in order to an empty B-Tree of degree 3. Only draw the configu

Indexed sequential files, Indexed Sequential Files An index is inserted...

Indexed Sequential Files An index is inserted to the sequential file to provide random access. An overflow area required to be maintained to permit insertion in sequence. I

Explain the interfaces in ruby, Explain the Interfaces in Ruby Recall...

Explain the Interfaces in Ruby Recall that in object-oriented programming, an interface is a collection of abstract operations that cannot be instantiated. Even though Ruby i

The complexity ladder, The complexity Ladder: T(n) = O(1). It is ca...

The complexity Ladder: T(n) = O(1). It is called constant growth. T(n) does not raise at all as a function of n, it is a constant. For illustration, array access has this c

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd