Just as a disclaimer, I have never taken a probability or stats course, so please excuse me for not being up to snuff around here. Anyhow, for my CS class, we had to write a program that will emulate a car wash. We only had to do it for the variables being set to specific numbers, but I got curious as to how it would grow. The variables that I'm dealing with are...
  • probOfArrival - Probability of a car arriving in a given minute.
  • timeForWash - The number of minutes that a car wash takes.
  • minutesOpen - The number of minutes that the car wash is open for.
  • numberOfDays - How many days (or passes) will be made.
  • totalCarsWashed - Total number of cars washed after numberOfDays days
  • totalWaitTime - Total number of minutes waited in numberOfDays days which coincides with the days of totalCarsWashed
  • averageWait - The average wait time for person (totalWaittime / totalCarsWashed)
Also of note is that only one customer can be served at a time, and a random number generator will generate a number between 0 and 99, and if it's less than probOfArrival, it will decide a car has arrived.
Given all that, I ran through the test with probOfArrival at .2 (1/5) and timeForWash at 4. I tried seeing if averageWait was approaching a limit as minutesOpen grew larger. According to my tests, it looked like it was headed to ~6.00. However, the probability equations of 16.
The equation said...
  • A = mean arrival rate of customers, which I thought of as probOfArrival, or .2 (1/5).
  • u = mean service rate, which I thought of as .25 (1/4), as I can serve one customer per 4 minutes.
  • p = (A/u), which equates to .8 (4/5), is the average utilization (which seems low to me, but I'll stick it out).
  • W = (1/(u-A)), which equates to 20, is the average time spent waiting including service time.
  • q = pW, or 16, which is to be the average time spent in line without service time.
That all seemed to work out OK, so I started seeing what my program said.
When hours open is 1, average wait time is 0, which is right, and the number of customers at even 100,000 days averages to a number extremely close to 2, which seems dead on. However, as I scale up the hoursOpen towards 1,000,000, averageWait seems to be reaching a limit of 6 instead of the 16 that the equations are saying! I'm wondering why that is. Thanks a lot!