Probability Model for Brewpub

Hi everyone,

I have been trying to help a friend come up with sales projections for a potential project using pretty standard industry data and regression modeling. I was thinking it would be interesting to model actual customer behavior at the hourly / daily level.

I was think the daily counts could be modeled by non-homogenous Poisson Process with the rate varying across lunch peak and nighttime sales. I would then like to be able to model number of pints and beer and food sold given some kind of distribution. Then I could run some simulations.

I keep thinking all the random variables are Poisson, but I think there is more to it.

First, I would have the number of customers per day as N ~ Poisson(u0) and then estimate the number brews and food dishes an individual has by modeling them either Binomial or Poisson random variables. This is where I am confused, I am not sure how to model the number of brews and food customers purchase on average. I know given a Poisson number of customers and if the number of beers purchased is binomial then I can model this situation with a Poisson distribution with parameter lambda*p, but I am not sure how to model beers and food while including the situation that an individual gets both. Would I use a Multinomial distribution conditioned on the same Poisson variable?

Not sure what the approach this type of problem is.

I know my thoughts are pretty scattered as I have not studied this stuff for many years, but I would like to research this further. If anything, can anyone point me to any literature with similar types of problems? I have a good probability modeling book, but there are not many numeric examples.

Any help would be appreciated.

Thanks,

Dan

Re: Probability Model for Brewpub

Hey Tabby.

I'd recommend that you split up each business day iibunto sections (hour, half-hour etc) and then use different distributions for customer, food, and beverage counts.

From this you can add up all the random variables (note that sum of Poisson is also a Poisson) and get the expectation or confidence intervals.

If you want to resort to more detail then I suggest you look into applied probability and queuing theory to model incoming customers, beverages, food, and even money and turnover if necessary. This is more complicated, but it allows you to make more complex models if need be.

Without knowing any more about your problem, the domain, and its context, I can't really give you any more advice.

One thing though is that if your model is really complex, you might want to look at using R or something like WinBUGS (both are free) where WinBUGS allows you to use really complex models and MCMC techniques to get distributions through simulation for these models (think in terms of making a complex model where you have tonnes of random variables with basically anything you want).

Re: Probability Model for Brewpub

Thanks for feedback!

I thought about modeling it with an M/M/1 queue since, but would like to try something simple to begin with. Although, the number of sales is most likely very dependent on the time an individual spends in the system which can be modeled with an M/M/1 queue. I used R all the time in my last job, so I will look into what queue modeling packages R has to offer.

I see at as follows:

N = number of people that enter store per some time interval (15 mins, 30 mins, hour...)

X = number of beers an individual buys

Y = number of food items an individual buys

N ~ Poisson(u0)

X ~ Poisson(u1)

Y ~ Poisson(u2)

Then you condition on probability an individual choses:

{ 1, has beer only

C = { 2, has food only

{ 3, has bother

So, E[X] = E[X|C=1]P(C=1) + E[X|C=2]P(C=2) + E[X|C=3]P(C=3) and E[Y] = E[Y|C=1]P(C=1) + E[Y|C=2]P(C=2) + E[Y|C=3]P(C=3)

Then I can just multiply E[N] by E[X]+E[Y] to derive sales. Clearly the parameters will depend on the conditioning.

While typing this I think I figured out a better way...See I can't get passed the random variable C in my work above, but I think I am looking at it wrong. I know from my probability modeling book that if N (the number of individuals that enter) is a poisson random variable and we want to find the probability that these individuals select k items is poisson with parameter p*rate. I can use this to come up with E[X]+E[Y] instead of conditioning on the three outcomes. Also, I could get a close form distribution from N*(X+Y) to simulate from...

I'm heading in the right direction. I am kind of "typing out loud" right now.

Again, thanks for you feedback. Very helpful.

Re: Probability Model for Brewpub

I am kinda replying to myself here, but my second thought above can't be correct. N*X for example is the (number of people in the pub) * (the number of items they purchase aggregated) which which gives me huge incorrect number as it is telling me each individual purchased that aggregate number....silly me.

So I am still chasing after that per customer number of beverages and food which I believe my first formulation gives me. I am not sure how to simulate form this formulation though. Well...I guess it is just a linear combination of Poisson RV's, so it just another Poisson RV.

I think I am starting to see it. Although, if anyone has experience with modeling queues that might represent this scenario I would be very interested in hearing a little about it.

As you said, I didn't give much background so here are some basic principals the system will abide by:

1) Serve your self (i.e., either go to the to pick up a drink / place food order and pick it up at a calling station when your name is called)

2) Assuming 6 beers is too much as the ABV% will be rather high (will be priced to deter binge drinkers)

3) Not everyone will come to drink (i.e., soda and family finger food available)

I would expect a large lunch crowed that comes for food deals and necessarily drink, since there are many business parks around. However, the majority will have a brew after 6.

I think an M/M/1 queuing model would fit this situation well, but queuing models seem to be concerned with arrival / intrarrival / service times given a certain number of customers, not the number of customers over a period of time. My limited knowledge of queuing theory tells me queuing model will only answer a portion of my problem, but I am not sure if that’s true.

Any suggested reading the topic or good examples of a similar situation?