Tag Archives: loto

Consecutive number and lottery

Recently, I have been reading odd things about strategies to win at the lottery. E.g.

or

I wrote something a long time ago, but maybe it would be better to write another post. First, it is easy to get data on the French lotteries, including draws, number of winners and gains,

loto=read.table("http://freakonometrics.blog.free.fr/public/
data/loto.csv",sep=";",header=TRUE)
balls=loto[,c("boule_1","boule_2","boule_3",
"boule_4","boule_5","boule_6")]
q=function(x){quantile(x,(0:5)/5)}
sortballs=balls
consec=balls[,-1]
sortconsec=consec
for(i in 1:nrow(balls)){sortballs[i,]=q(balls[i,])
consec[i,]=sortballs[i,2:6]-sortballs[i,1:5]
sortconsec[i,]=sort(consec[i,])}
winner1=loto[,"nombre_de_gagnant_au_rang1"]
gain1=as.numeric(as.character(loto[,"rapport_du_rang1"]))
winner2=loto[,"nombre_de_gagnant_au_rang2"]
gain2=as.numeric(as.character(loto[,"rapport_du_rang2"]))
winner3=loto[,"nombre_de_gagnant_au_rang3"]
gain3=as.numeric(as.character(loto[,"rapport_du_rang3"]))
winner4=loto[,"nombre_de_gagnant_au_rang4"]
gain4=as.numeric(as.character(loto[,"rapport_du_rang4"]))
winner5=loto[,"nombre_de_gagnant_au_rang5"]
gain5=as.numeric(as.character(loto[,"rapport_du_rang5"]))
which1=(sortconsec[,1]==1)
which2=(sortconsec[,2]==1)
which3=(sortconsec[,3]==1)
which4=(sortconsec[,4]==1)
which5=(sortconsec[,5]==1)

There several ways to defining “winning at the lottery” (2 out of 6, 3 out of 6, 4 out of 6, etc) and to define “having consecutive numbers” (it can be 2 out of 6, 3 out of 6, etc). For instance,

It is also possible to compare the number of winners obtained for medium winners (3 out of 6, so called vainqueur de rang 4) when there were 2 consecutive numbers

> t.test(winner4[which1==TRUE],winner4[which1==FALSE])

Welch Two Sample t-test

data:  winner4[which1 == TRUE] and winner4[which1 == FALSE]
t = -3.2132, df = 4792.491, p-value = 0.001321
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-6864.430 -1662.123
sample estimates:
mean of x mean of y
33887.82  38151.10

With a simple mean comparison test, we have that there is a significant difference between average number of winners when there were at least 2 consecutive numbers out of 6 balls drawn. And actually, the average number of winners was lower when there are consecutive numbers. And if we look at the average gain, we have also a significant difference

> t.test(gain4[which1==TRUE],gain4[which1==FALSE])

Welch Two Sample t-test

data:  gain4[which1 == TRUE] and gain4[which1 == FALSE]
t = 5.8926, df = 3675.361, p-value = 4.143e-09
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
11.06189 22.09337
sample estimates:
mean of x mean of y
173.9788  157.4012

Here we see that if we play consecutive numbers, on average, the gain is larger. Perhaps it would be better to look at that on graphs.

which0=which1
WIN=c(mean(winner5[which0==TRUE]),mean(winner5[which0==FALSE]),
mean(winner4[which0==TRUE]),mean(winner4[which0==FALSE]),
mean(winner3[which0==TRUE]),mean(winner3[which0==FALSE]),
mean(winner2[which0==TRUE]),mean(winner2[which0==FALSE]),
mean(winner1[which0==TRUE]),mean(winner1[which0==FALSE]))
MWIN=matrix(WIN,2,5)

plot(1:5,MWIN[1,],type="b",col="red",log="y",
ylim=c(1,1000000),xlab="two consecutive numbers",
ylab="number of winners (log scale)")
lines(1:5,MWIN[2,],type="b",col="blue",pch=4)

If we focus on the case where “having consecutive numbers” means two consecutive numbers, we have below the number of winners, with first rank (6 out of 6), then second rank (5 out of 6), etc,

Note that the y-axis is on a log scale, and that draws with consecutive balls are in red, and no consecutive balls are in blue. If we focus on average gains, curves are in opposite order,

But if we consider the case of three consecutive balls, we have, for the number of winners,

or for average gains

Here it starts to get slightly different: there are more “big winners” when there are at least three consecutive numbers. And with four consecutive numbers, it is clearly the opposite

Here we see that there are much more winners with four consecutive numbers (actually, it might be a triplet and a pair). So I have to confess that I am not convinced by the conclusion: actually a lot a people pick consecutive numbers… Actually, if we look at draws where there were the more winners, we can clearly see that a lot of players like consecutive numbers (perhaps not has much as playing birthdays, since most numbers are lower than 31),

loto[loto$"nombre_de_gagnant_au_rang1">50,
c("combinaison_gagnante_en_ordre_croissant",
"nombre_de_gagnant_au_rang1","date_de_tirage")]
combinaison_gagnante gagnant_au_rang1
3189      2-4-13-16-28-31              103
3475       1-5-9-10-12-25               64
4018       4-5-7-14-15-17               63
4396    26-27-28-35-36-37               64
4477     7-11-15-27-33-44               53
4546      2-9-12-14-19-24               60
4685      2-8-10-12-14-16               96
date_de_tirage
3189       19930626
3475       19920212
4018       19880504
4396       19840919
4477       19830914
4546       19820519
4685       19790919

On September 1979, there were 5 even consecutive numbers (ok, it can not be considered strictly as consecutive numbers) and 96 winners with 6 numbers out of 6 ! And if we look at the others, even if they are not strictly consecutive, there is a lot of regularity. So I believe that picking consecutive numbers might not be a great strategy if you want to win a lot of money !

De la difficulté de générer du hasard

J’avais parlé cet été de l’utilisation des chiffres du us treasury balance comme générateur (involontaire) de nombres aléatoires. Cet été, un débat intéressant a secoué le Québec, suite à la plainte déposée par deux joueurs (compulsifs) de l’Extra. L’histoire est raconté en détails sur le site de canoe.ca, ou de lapresse.ca. Le jeu est assez simple. L’histoire un peu moins (c’est pour cela que j’ai préféré renvoyer vers deux sources racontant la même histoire). Pour essayer d’expliquer simplement ce qui s’est passé revenons un peu sur le jeu. Tous les jours, Loto-Québec tire au hasard un nombre de 7 chiffres.

http://freakonometrics.hypotheses.org/files/2015/12/extra06.gif

Comme on le voit ci-dessus, le but est d’avoir les premiers (ou les derniers) chiffres bons.
Quand on achète un ticket, un numéro nous est attribué… et on espère qu’il sera tiré le soir. Mais le soucis est que les joueurs qui intentent un procès n’achetaient pas un mais dix tickets. Et étrangement, à chaque fois, ils avaient un ticket gagnant, et un seul.
En fait, quand on achetait dix combinaisons d’extra, il semble que le premier chiffre sans remise parmi 0 à 9, les cinq suivants avec remise parmi 0 à 9 et le dernier sans remise parmi 0 à 9 (pour reprendre la formulation qu’a utilisé Christian Léger de l’UdM pour me l’expliquer). Sur un achat, on ne voit rien, on a des nombres uniforme… mais avec répétition, ça se complique.
En fait, c’est toujours quand on étudie la dynamique des générateurs de nombres aléatoires que l’on a des surprises.
Par exemple sur les tirages de l’extra (et non pas les numéros des combinaisons des billets, car on ne les trouve pas sur internet, il faudrait acheter les billets pour refaire l’expérience). On peut récupérer l’historique des tirages en ligne, sur le site de loto-quebec.com.

> extra=read.table("http://freakonometrics.blog.
free.fr/public/data/extra-loto-quebec.csv",sep=";",header=TRUE)
> n=1940
> extra=extra[1:(n-1),1:2]
> X=extra[,2]/10000000
Si on regarde les 1940 derniers tirages (car avant, il semble qu’il n’y avait pas 7 mais 6 chiffres), on a la série suivante,

Et un test d’uniformité semble confirmer l’intuition que les nombres sont uniformément répartis,
> ks.test(X,'punif')

	One-sample Kolmogorov-Smirnov test

data:  X 
D = 0.021, p-value = 0.3895
alternative hypothesis: two-sided

Mais générer du hasard, ça n’est pas que ça… Et sur cette série, si on fait des tests sur l’indépendance des observations, on est un peu surpris,

> library(lawstat)
> runs.test(X, plot.it = FALSE, alternative = "two.sided")

	Runs Test - Two sided

data:  X 
Standardized Runs Statistic = -1.8, p-value = 0.07273

> runs.test(X, plot.it = FALSE, alternative = "positive.correlated")

	Runs Test - Positive Correlated

data:  X 
Standardized Runs Statistic = -1.8, p-value = 0.03637

> library(FitAR)
> LjungBoxTest(qnorm(X), k=0, lag.max=12, 
+ StartLag=1, SquaredQ=FALSE)
  m   Qm pvalue
  1  7.2 0.0075
  2  9.2 0.0102
  3 10.9 0.0125
  4 10.9 0.0276
  5 15.3 0.0090
  6 15.4 0.0171
  7 16.1 0.0244
  8 16.3 0.0380
  9 16.7 0.0538
 10 20.6 0.0240
 11 20.8 0.0357
 12 20.8 0.0533

Cursed numbers ?

In Lost, Hugo “Hurley” Reyes played the numbers 4, 8, 15, 16, 23 and 42 at the lottery, and ended up winning the $114-million jackpot. And over the ensuing weeks, everyone around him seems to suffer increasingly bad luck: Hurley’s grandfather dies of a heart attack, his brother’s wife walks out, his mother breaks her ankle while the house Hurley bought her goes up in flames, and Hurley himself is falsely arrested.
Anyway, last week (here) 4 numbers (out of 6) appeared at the lottery in LA. As pointed out by Xian (here), the odds were not that small, i.e. it is a 1‰ chance,

http://freakonometrics.blog.free.fr/public/perso/probaloto.png
Hence, with one lottery per week, the return period is 16 years. Note this percentage is very close to what we did observe on the French lottery (below the statistics in ‰, from here, in a zip file),

> loto=read.table("loto.csv",dec=",",header=TRUE,sep=";")
> ntirage=nrow(loto)
> loto=loto[51:ntirage,]
> ntirage=nrow(loto)
> N=as.matrix(loto[,c("boule_1","boule_2","boule_3",
   "boule_4","boule_5","boule_6")])
> P=rep(NA,nrow(N))
> for(s in 1:nrow(N)){
+ P[s]=sum(N[s,1]%in%c(4, 8, 15, 16, 23, 42)+
+          N[s,2]%in%c(4, 8, 15, 16, 23, 42)+
+          N[s,3]%in%c(4, 8, 15, 16, 23, 42)+
+          N[s,4]%in%c(4, 8, 15, 16, 23, 42)+
+          N[s,5]%in%c(4, 8, 15, 16, 23, 42)+
+          N[s,6]%in%c(4, 8, 15, 16, 23, 42))
+ }
> table(P)/nrow(N)*1000
P
         0          1          2          3          4
435.732113 405.366057 137.271215  19.966722   1.663894

But what about the full sequence…? Imagine that in France, at the official lottery, the exact sequence played by Hugo appears. What a coincidence.The probability that the sequence appears, assuming that there are 48 possible numbers in the lottery, is

http://freakonometrics.blog.free.fr/public/perso/lotto2.png
i.e. the expected number of draws we need before seeing that sequence for the first time is almost a billion.
Now if we look at all official lotteries around the world, say 100 per week, what is the probability to see Hurley’s sequence shows up – at least once – in 25 years (assuming that after 25 years, no one will remember Lost and those cursed numbers) ? It looks like it is a 1% chance…
http://freakonometrics.blog.free.fr/public/perso/proba-lost.png
So let us wait and see…

De l’uniformité des tirages du loto

J’ai abordé à plusieurs reprises les tirages du loto (ici ou ), en mentionnant par exemple que Slutsky avait proposé les utiliser comme générateurs de nombres aléatoires. Or je suis tombé un peu par hasard l’autre jour sur un rapport – qui date un peu, certes – expliquant que la loterie britannique était biaisée, la boule 37 tombant (selon ledit rapport) un peu trop souvent.
On retrouve le même genre de remarque sur le loto français, où certains trouvent surprenant que certains numéros soient sortis plus souvent que d’autres…. Certains notent – sans rire – que le fait que la boule 7 soit sorti 722 fois sur 4858 tirages confirme le pouvoir magique de ce chiffre (en moyenne, une boule n’est sortie que 694 fois). Je laisse les amateurs de pratiques ésotériques s’amuser avec la base qui est téléchargeable ici (on pourra noter que les multiples de 5 apparaissent aussi plus souvent que la moyenne).

  • De la normalité des tirages

Mais je m’égare. Le but était de voir si, sur les tirages du loto en France, certaines boules sortaient éventuellement tropsouvent. Si on prend la base et que l’on regarde les statistiques d’ordre, on obtient le graphique suivant

En l’occurrence, la boule qui est le plus sortie est sortie 745 fois (il s’agit du 34), et celle qui est le moins sortie est sortie 652 fois (le 29). Cette répartition me rappelant la  fonction quantile de la loi normale, j’ai décidé de la représenter aussi sur le graphique. Intuitivement, quand on tire des boules dans une urne (avec remise), on s’attend à trouver un loi binomiale, qui s’approche d’une loi normale quand le nombre de tirages est grand. Avec près de 5000 tirages, on pourrait penser que l’approximation asymptotique ne serait pas absurde.
Mais si l’ajustement n’est pas mauvais pour les boules les plus sorties, on voit qu’il est assez mauvais pour les boules les moins sorties….La première explication à laquelle j’ai pensée est que mon approximation est valide si l’on fait des tirages avec remise. Or formellement, entre chaque tirage, on remet bien toutes les boules dans l’urne, mais à l’intérieur d’un tirage, les tirages se font sans remise (ce qui fait qu’une boule ne peut sortir qu’un fois par tirage). Bref, ceci pourrait expliquer la non-normalité…

  • Le latin cube

Ceci m’a fait pensé à l’idée du latin hypercube, qui est souvent utilisé pour rendre “plus uniforme” les tirages avec des lois de Monte Carlo.
Les figures ci-dessous montrent des simulations de Monte Carlo classiques à gauche, et avec une partition avec 10 tirages uniformes dans 100 carrés, à droite.

C’est l’idée du latin hypercube… Les figures ci-dessous correspondent à des estimations nonparamétriques des densités par des noyaux betas, avec le même paramètre de lissage (pouvant être interprété comme une fenêtre),

Autrement dit, l’utilisation de la méthode latin hyperbube permet d’avoir des choses beaucoup plus uniformes…
C’est finalement la même chose que l’on a ici. Mais ceci fait qu’on devrait être de variance plus faible, mais cela n’explique pas l’asymétrie que l’on observe. Car effectivement, si l’on calcul la skewness (moment centré réduit d’ordre 3), on obtient 0,1928.

  • Faisons un peu de simulations

Afin de voir s’il y avait un soucis, la méthode la plus simple consiste à faire du Monte Carlo. Et afin de valider cette histoire de latin cube, deux techniques ont été considérée ici,

  • tirer 34000 boules (avec remise) parmi {1,2,….,49}, ce qui doit se rapprocher de la normalité,
  • tirer 7 boules (sans remise) parmi {1,2,….,49}, et répéter 4858 fois cette opération, ce qui correspond à un vrai tirage du loto.

En faisant 10000 tirage de ces 4858 tirages du loto, on obtient les résultats suivants, résumés par les valeurs moyenne en trait plein, et les quantiles à 5% et 95% en trait pointillé. Les traits verts sont la simulation de vrais tirages, et les traits mauves correspondent à la version avec remise. On peut noter que la courbe verte présente moins de variance que la courbe mauve, ce qui semble confirmer ce que je racontais dans le paragraphe précédant,

Bref, on note que les boules qui sont peu sorties sont finalement trop sorties par rapport à ce qu’aurait du donné des tirages indépendants. Mais ceci ne prouve rien, si ce n’est que c’est statistiquement surprenant….

Who wants to be a millionnaire ?

Le vrai moyen de gagner beaucoup est de ne vouloir jamais trop gagner et de savoir perdre à  propos.” (Fénélon – Les aventures de Télémaque)

Bon, pour ma part, j’avais tenté une autre solution vendredi dernier: tenter de gagner les 126 millions d’euros de l’Euromillion. Et comme je suis toujours en train de poster des billets sur mon blog, on peut en déduire que je ne suis pas l’heureux vainqueur (car oui, il parait qu’il y en a un… un très bon ami ami à moi… enfin… s’il le souhaite!).

Quelle ne fut pas me surprise de voir des collègues (on peut dire copains) matheux indignés par mon comportement, et me reprocher mon irrationalité*

Sur l’irrationalité des joueurs, je renvoie à de nombreux papiers de la littérature économique, en particulier le papier de Maurice Allais (ici), précisément intitulé Le comportement de l’homme rationnel devant le risque. Je dois avouer que, selon moi, la critique de Maurice Allais est très proche de ce que notent Daniel Kahneman et Amos Tversky (ici) sur la distinction fondamentale (et non symétrique) entre gains et pertes.

Bref, toute cette discussion est un prétexte pour parler d’un très joli papier que m’a fait découvrir Charles Figuières lors de mon exposé à Montpellier voilà deux semaines, de Graciela Chichilnisky sur Topology of Fear. Un preprint peut se télécharger ici, sa page internet (ici) regorge d’informations passionnantes, mais je ne sais toujours pas où ce brillant papier sera publié…. à suivre donc.

* pour aller un peu plus loin, je pourrais avouer ici que ma stratégie a été de jouer “1-2-3-4-5” puis “6-7”  (j’ai découvert que ce type de loto était un peu différent de celui que j’utilise dans mes exemples de probas, avec des étoiles). Tout d’abord, cette stratégie est aussi probable que n’importe quelle autre. Mais pour information, lors du 3ème tirage du Loto en France (en 1976), les numéros “1-2-3” sont sortis. Historiquement (voir ici), sur plus de 4850 tirages, on a eu deux numéros consécutifs (au moins) dans 2/3 des tirages (63%), et trois consécutifs dans 8% des tirages. On a vu 39 fois (0,8% des tirages), quatre numéros consécutifs. Mais jamais 5 numéros consécutifs, en presque 35 ans. Je laisse les plus motivés faire les calculs théoriques. Ma stratégie devrait être payante (si je jouais plus d’une fois tous les 5 ans) car peu de monde joue des numéros consécutifs. Si on compte le nombre de gagnants du 1er rang, il y a – en moyenne – 2,90 gagnants les tirages comprenant deux numéros consécutifs et sinon 4,03 gagnants. Si on va plus loin, il y a 2,48 gagnants les tirages comprenant trois numéros consécutifs et 3,39 sinon. Par contre, si on regarde avec 4 nombres consécutifs, un tombe sur un point aberrant: d’ordinaire, on a 3 gagnants du 1er rang, mais en septembre 1984, avec comme tirage “26-27-28-29-35-36-37” (4 et 3 consécutifs), il y a eu 64 gagnants du 1er rang, ce qui est presque le record…
D’ailleurs si on regarde les records (promis après j’arrête), le record fut en juin 1993, avec 103 vainqueurs, où 31 fut le plus grand chiffre, et le 13 sortit. Ensuite, en 1979, on a eu 96 vainqueurs avec des numéros pairs consécutifs, à savoir le tirage “2-8-10-12-14-16-18” (soit 6 chiffres pairs successifs). Ensuite arrive le tirage que je mentionnais… En fait, tous les tirages qui ont eu des très gros nombres de vainqueurs du 1er rang présentaient une régularité impressionnante. On retrouvera ainsi le tirage “4-5-7-14-15-17-20” par exemple, avec 63 vainqueurs… Bref, ma stratégie n’est peut être pas géniale finalement….