In this assignment you will explore a simple variation of the
single-server queue: when there are two or more servers instead
of a single server.
In this system, customers arrive as usual from the outside. Now
there are K servers available instead of one.
A customer can go to any of the K servers for service.
Thus, all K of them have to be busy serving for a
customer to need to wait.
For this assignment:
- Use the simulation of a single-server queue covered
in class as a starting point.
- Write code for general K, and make a K a
variable.
- Assume the service time is the same at all the servers,
and that each service time is exponentially distributed
with mean 1.0.
- For the case K=2, plot the system time vs. increasing
arrival rate λ.
- What is the value of the system time when λ=1.5?
- What value of λ would cause the queue to become
unstable?
- What value of λ would cause the queue to become
unstable when K=3?
- What did you do to assess the accuracy of your estimates?
- Write down two applications of the above queueing model?
Submission:
- Put all your code for this assignment in a single directory
so that your code unpacks into that directory. Embed your
username in the directory name.
- Write all your code in a file called
ThreeServerQueue.java.
- Note: there is no animation required. Your program should
compile and execute at the command-line, printing aggregate
results to the terminal.
- Your directory should contain answers to the questions, and
the plot (as a JPEG, GIF or PNG).
- Include a plain-text README file that tells us how to
run your code.
- Name your zip file karel4.zip (for username karel).