I want to do the following model using simevents
1 view (last 30 days)
Show older comments
Dear all,
I want to do the following model using simevents:
following assumptions:
1. Batches of customers of variable size arrive to the system in a compound Poisson process. We let λcidt (i=1, 2, 3,…) to be the first order probability that a batch of i customers arrives at the system during a short interval of time (t, t+ dt],
2. The service is provided to customers one by one on a "first come, firstserved" basis by a single server. The service time follows a general(arbitrary) distribution with distribution function G(s) and density functiong(s). Let µ(x)dx be the conditional probability density of servicecompletion during the interval (x, x+ dx], given that the elapsed time is x.
3. When a service completes, then with probability p the server may take a vacation of random length, or with probability I-p he may stay in the system providing service, where 0≤ p ≤ 1.
4. Vacation time follows a general (arbitrary) distribution with distribution function B(v) and density function b(v). We let γ(x)dx be the conditional probability of a completion of a vacation during the interval (x, x+ dx] given that the elapsed vacation time is x, so that
5. The queueing system is subjectto breakdowns which are assumedto occur according to a Poisson stream with mean breakdown rate α >0. We also assume that once the system breaks down, the customer whose service is interrupted comes back to the head of the queue waiting for the service to resume.
6. Once the system breaks down, it enters a repair process immediately. The repair time follows a general (arbitrary) distribution with distribution function Ф(r) and density function φ(r). Let β(x)dx be the conditional probability of a repair completion during the interval (x, x+ dx] given that the elapsed repair time is x.
7. Different stochasticp processes involved in the system are independentofeach other.
2 Comments
Accepted Answer
Walter Roberson
on 24 Nov 2012
if rand < p
take_vacation();
else
status = process_customer(current_customer);
if ~strcmp(status, 'broke down')
remove_customer(current_customer);
end
end
More Answers (1)
See Also
Categories
Find more on Discrete-Event Simulation in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!