# The Gambling Machine Puzzle

**bayesianbiologist » Rstats**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

This puzzle came up in the New York Times Number Play blog. It goes like this:

An entrepreneur has devised a gambling machine that chooses two independent random variables x and y that are uniformly and independently distributed between 0 and 100. He plans to tell any customer the value of x and to ask him whether y > x or x > y.

If the customer guesses correctly, he is given y dollars. If x = y, he’s given y/2 dollars. And if he’s wrong about which is larger, he’s given nothing.

The entrepreneur plans to charge his customers $40 for the privilege of playing the game. Would you play?

I figured I’d give it a go. Since I was feeling lazy, and already had my computer in front of me, I thought that I’d do it via simulation rather than working out the exact maths. I tried playing the game with the first strategy that came to mind. If x<50, I would choose y>x, and if x>50, I’d choose y

N<-100000 x<-sample.int(100,N,replace=TRUE) y<-sample.int(100,N,replace=TRUE) dec_rule=50 payout<-numeric(N) for(i in 1:N) { ## Correct Guess (playing simple max p(!0) strategy) if( (x[i]>dec_rule & y[i]x[i]) ) payout[i]<-y[i] ## Incorrect Guess (playing simple max p(!0) strategy) if( (x[i]>dec_rule & y[i]>x[i]) | (x[i]<=dec_rule & y[i] Which leads to an expected payout of $37.75. Playing the risk averse strategy leads to an expected value less than the cost of admission, loosing on average 25 cents per play. No deal, Mr entrepreneur, I had something else in mind for my forty bucks anyway.

Lets try alternate strategies, and see if we can’t play in such a way as to improve our outlook.

## Gambling Machine Puzzle ## ## Puzzle presented in http://wordplay.blogs.nytimes.com/2013/03/04/machine/ result<-numeric(100) for(dec_rule in 1:100) { N<-10000 x<-sample.int(100,N,replace=TRUE) y<-sample.int(100,N,replace=TRUE) payout<-numeric(N) for(i in 1:N) { ## Correct Guess (playing dec_rule strategy) if( (x[i]>dec_rule & y[i]x[i]) ) payout[i]<-y[i] ## Incorrect Guess (playing dec_rule strategy) if( (x[i]>dec_rule & y[i]>x[i]) | (x[i]<=dec_rule & y[i] According to which, the best case scenario is an expected payout of $40.66, or an expected net of 66 cents per bet, if you were to play the strategy of choosing y>x for any x<73 and y

73. You’re on, Mr entrepreneur! To calculate the exactly optimal strategy and expected payout, we would need to compute the derivative of the expected payout function with respect to the within game decision threshold. I leave this fun stuff to the reader

Toleave a commentfor the author, please follow the link and comment on their blog:bayesianbiologist » Rstats.

R-bloggers.com offersdaily e-mail updatesabout R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.