# I'll Be in Vegas, Trying to Win Against the House

# I'll Be in Vegas, Trying to Win Against the House

Join the DZone community and get the full member experience.

Join For FreeHortonworks Sandbox for HDP and HDF is your chance to get started on learning, developing, testing and trying out new features. Each download comes preconfigured with interactive tutorials, sample data and developments from the Apache community.

In fact, I’m going there with my family and some friends, including two probabilists (I mean professionals, I am merely an amateur), with this incredible challenge: **will I be able to convince probabilists to go to play at the Casino?**

Actually, I also want to study them carefully, to understand how we should play optimally. For example, I hope I can make them play the roulette. Roulette is simple. With a French (or European) roulette, it is probably the simplest: if I bet on *black*, I win if one of 18 black numbers is out, and I lose if one of the 18 red numbers – or zero (which is green) – is out. This gives a winning probability of 18/37 i.e. a 48.64% chance. But in Vegas, I think it’s mostly American Roulette that can be found in casinos, in which there is a zero and a double zero (both favorable to the bank). Here, the probability of winning is 18/38, i.e. 47.36% chance. The two roulettes are

Now, let us discuss a little bit about optimal strategy. For instance, suppose I go to Las Vegas with an initial wealth (say $100). The goal is to find the strategy which maximizes the probability to leave Las Vegas with (here $200). Should I play big, or small?

Assume that I can bet (that will be, here, for convenience, a fraction of ). With probability , I will get , and with probability , I will get (and lose my ). As mentioned above, is (a little) smaller than 50%. The casino must win (actually, we will see that this assumption has a very strong impact on the strategy).

Suppose my goal is to double my initial sum, as mentioned in the introduction of this post. Maybe there is an optimum value for , to maximize the probability of doubling my bet. To make it simple, the game ends either because I did not, or because I did, manage to double my initial wealth… Assume further that is fixed, and that I do not revise my bets. One can use monte carlo simulations, to get an intuitive idea…

> bet=function(s=1,t=2*s,x=s/4,p=.4736,nsim=100000){ + vp=rep(0,nsim); #vw=s + for(i in 1:nsim){ + w=s; + while((w>0)&(w<t)){ + ux=sample(c(min(x,t-w),-x),size=1,prob=c(p,1-p)) + w=w+ux + } + vp[i]=(w>=t)} + return(mean(vp)) + }

If we plot this probability as a function of , we have the following

> BET=function(x) bet(x=x) > vx=1/(1:20) > px= Vectorize(BET)(vx) > plot(vx,px,log="x")

Let us see if we can do the maths, and actually compute those probabilities.

For example, if , I play everything I have, and I double with probability . That one was simple. And indeed, on the graph above, the point on the right is probability (the red horizontal line).

Assume now that I can bet , and I will play, at least, two rounds

- with probability I will lose both rounds (and the game is over)
- with probability , I will win both rounds, and I double my bet (and the game is also over)
- with probability , I will lose once, and double once. Anyway, I will find myself again with my (initial) wealth . So the game will start again….

To make the story short the probability of doubling my earnings is

which is

Let’s try something more general: I have initial wealth , I can bet and the goal is to reach (or, more generally, say, ). Now, the probability to reach from betting (always) is exactly the same as the probability to reach from betting only 1. Let denote the probability to go from to betting 1 (let us use generic parameters). We can easily get the following equation

Thus, we can write

or equivalently

Now, observe that (since I cannot have a gain without any money).

Let us write using a domino technique :

i.e.

so this geometric sum can also be written

Finally, we can write

Here, there is still that I have to explicit. The idea is to observe that , thus

So finally,

Nice isn’t it? But to be honest, there is nothing new here. This is actually an old theorem discovered by Christiaan Huygens in 1657, then extended by Jacob Bernoulli in 1680 and finally properly established by Abraham de Moivre in 1711. It is possible to plot this graph, as a function of ,

> bet2=function(s=1,t=2*s,x=s/4,p=.4736){ + vp=(1-((1-p)/p)^(s/x))/(1-((1-p)/p)^(t/x)) + return(vp) + }

The graph is the same as the one with monte carlo simulation (hopefully). Observe, looking carefully at the function above, that the probability is decreasing with . Which makes sense… Further, the probability is decreasing with : the more hungry, the less chance of winning I have.

Now, the interesting part is what is plotted on the graphs above: the smaller (the size of the bets at each round), the less chances to win: **if I want to win, it is important not to play being little player ! I must bet everything I have !** Actually, the funny thing is that if the probability of winning was (slightly) larger than 1/2, on the contrary, I should bet as small as possible

So far, there is nothing new. Everything mentioned in this post can be related to a fundamental result of Lester Dubins and Leonard Savage, in “*How to Gamble if You Must : Inequalities for Stochastic Processes*“ (published in 1965), see also Sudderth (1972). Of course, I can try another strategy, a little less reasonable, I think, which is sometimes called *Martingale of D’Alembert*. I believe more in luck than coincidence, so, when I win, I drop my bet (do not tempt fate) but when I lose, I increase my bet (I must win someday). But let’s keep it for another post, someday…

Again, that’s a theory. I guess we should try, and see how it works. I’ll try to upload pictures on the blog during the road trip, so if by the beginning in August nothing has been posted on the blog, please send a rescue team to save me at the Bellagio…

Hortonworks Community Connection (HCC) is an online collaboration destination for developers, DevOps, customers and partners to get answers to questions, collaborate on technical articles and share code examples from GitHub. Join the discussion.

Published at DZone with permission of Arthur Charpentier , DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

## {{ parent.title || parent.header.title}}

## {{ parent.tldr }}

## {{ parent.linkDescription }}

{{ parent.urlSource.name }}