中大獎的秘密!彩票的數學知識
彩票怎樣才能中獎?
理論上,只能靠運氣。但是,如果規則設計得不好,就可以鉆漏洞。
2005年2月,美國的一個彩票品種,就出現了漏洞,被麻省理工學院的學生發現了。隨后的七年,這個學生反復購買這個品種,一共賺到了300萬美元。
本文介紹他怎么做的,以及其中的數學原理。我依據的材料,主要來自數學教授 Jordan Ellenberg 在斯坦福大學的一次演講(Youtube)。
一、期望值
彩票最重要的數學概念,叫做"期望值"(expected value),即同一種行為多次重復以后,所能得到的平均收益。
舉例來說,如果每次抽獎需要2元,假設200次抽獎可以中獎一次,獎金為300元。那么,你花了2000元,一共抽獎1000次,中獎了5次,獎金為1500元。
也就是說,1000次抽獎的總收益是1500元,每次的平均收益是1.5元,這就是期望值。它的計算公式如下。
- 期望值 = 300 * (1 / 200) + 0 * (199 / 200) = 1.5
期望值是1.5元,但是每次抽獎成本2元,于是凈虧損0.5元。
一看就知道,這個事情是不劃算的,做得越多,越不劃算。偶爾買一次彩票,倒也算了;如果你一天到晚不斷買彩票,就肯定會虧很多錢(上例是每200次虧100元)。
總之,期望值是衡量彩票收益的一個關鍵指標。
二、馬薩諸塞州的 WinFall 彩票
美國馬薩諸塞州有一個彩票品種,叫做 WinFall。它的規則很簡單:1到48里面,你猜6個數字,猜中就有獎。
- 四等獎(6個猜中2個):獎金2元
- 三等獎(6個猜中3個):獎金5元
- 二等獎(6個猜中4個):獎金150元
- 一等獎(6個猜中5個):獎金4000元
- 特等獎(6個猜中6個):獎金池剩余的全部獎金
有一期,一共賣出了930萬張彩票,其中特等獎一個,獎金100萬美元,一等獎238個,二等獎11625個,三等獎19.8萬個,四等獎136.8萬個。
計算可知,這種彩票的期望值是0.798元。
- 期望值 =
- 100萬 * ( 1 / 930萬) +
- 4000 * ( 238 / 930萬) +
- 150 * (11625 / 930萬) +
- 5 * (19.8萬 / 930萬) +
- 2 * (136.8萬 / 930萬 )
- = 0.798
每張彩票的價格是2元,可是平均收益只有0.798元,連一半都不到,可見這種彩票是非常不劃算的。因此沒有吸引力,購買這種彩票的民眾不斷減少。
州政府很著急,因為政府從彩票抽成20%(每張0.4元)。如果銷售量減少,政府的收益也會減少。于是,政府為了增加這種彩票的吸引力,決定修改彩票規則。
三、新規則
新的規則是,如果當期沒有特等獎(沒人猜中6個數字),那么獎金會分配給一等獎、二等獎、三等獎的得主,各獎項新的中獎金額如下。
- 一等獎(6中5):50000元
- 二等獎(6中4):2385元
- 三等獎(6中3):60元
還是使用前面的中獎率,計算期望值。
- 期望值 =
- 50000 * ( 238 / 930萬) +
- 2385 * (11625 / 930萬) +
- 60 * (19.8萬 / 930萬) +
- = 5.53
每張彩票的價格還是2元,但是期望值變成了5.53元。購買這種彩票就變得非常劃算,大量購買的話, 可以得到2.5倍的收益。之所以期望值大于彩票的成本,是因為獎金池還包含前期剩余的獎金。
麻省理工學院的一個學生,發現了這一點。他湊了5000元購買彩票,結果中了將近15000元!
四、如何選擇號碼?
現在我們知道,新規則的彩票是有利可圖的,可以大量購買。但是,還有一個問題,應該怎么選擇號碼,才能保證收益?也就是說,48個號碼里面,你應該選擇哪6個號碼,才能收益最大化?
畢竟你不能購買所有彩票,因為彩票的收益來自沒中獎的那些人。你只能購買一部分彩票,設法使得自己購買的號碼有最大的中獎可能。
為了簡化思考,讓我們考慮一種簡單的情況。1到7里面猜三個數字,獎金如下。
- 猜中3個:獎金6元
- 猜中2個:獎金2元
- 猜中1個:無獎金
你可以同時選擇七種組合(即購買七張彩票),請問應該如何選擇號碼?
五、組合數公式
首先,讓我們考慮一下,1到7這七個數字里面,三個數字的組合一共有多少種?這在數學里面,叫做組合數公式。
- 組合數公式是指從 m 個不同元素中,取出 n(n ≤ m)個元素的所有組合的個數,用符號 c(m, n) 表示。
它的計算公式如下。
- c(m, n) = m! / n! * (m - n)!
上面公式中,感嘆號表示階乘,比如4! 等于4 * 3 * 2 * 1 。
按照上面的定義,七個數字里面的三個號碼的組合,共有c(7, 3)個。
- c(7, 3) = 7! / 3! * (7 - 3)! = 35
這就是說,三個數字的組合共有 35 種。我們可以把它們全部列出來。
- 123 124 125 126 127
- 134 135 136 137
- 145 146 147
- 156 157
- 167
- 234 235 236 237
- 245 246 247
- 256 257
- 267
- 345 346 347
- 356 357
- 367
- 456 457
- 467
- 567
上面是所有35種可能的組合,你必須從中選出7種。請問應該選擇哪七種?
六、最佳組合
答案是下面這七種組合。
- 123 145 167 247 256 346 357
這七張彩票能讓你的收益最大化。因為,不管最后的中獎號碼是什么,它們可以保證你總是獲得6元獎金。如果中獎號碼是123,那么你拿到頭獎6元;如果中獎號碼是367,那么167、346、357這三張彩票各自猜中兩個號碼,你中了三個小獎,獎金總額也是6元。
仔細觀察這七張彩票,你會發現它們是精心選擇的:每個數字都正好出現三次。這導致你要么中一個大獎,要么中三個小獎。
七、幾何選擇法
這七張彩票是怎么選出的呢?

有一種幾何方法,可以非常簡單地做到這一點。七個號碼就是七個點,把它們用直線連起來,每根線上只能有三個點,而每個點出現在三根線上。畫成上面的形狀,就得到了七根線(內部的圓也算一根線)。然后,記錄一下每根線上的號碼,很簡單就選出了七張彩票。
更嚴謹的證明是這樣的:1到7這七個數字,共有21種兩個數字的組合(C(7, 2)),這意味著只要把這21種組合都買全了,就可以保證中三個小獎。因為三個中獎號碼里面,共有三種兩個數字的組合(比如中獎號碼是367,那么36、37、67都可以中小獎)。另一方面,由于每張彩票包含三個號碼,即包含三種兩個數字的組合,那么最少只要買7張彩票就能覆蓋全部21種組合。
八、實際的策略
回到前面的問題,馬薩諸塞州的彩票應該怎么買?
6個號碼只要猜中4個,就可以中二等獎,只要把所有四個號碼的組合都買了,就可以確保中15個二等獎(6個中獎號碼共有15個四個號碼的組合C(6, 4))。
48個號碼里面共有194580種四個號碼的組合(C(48, 4)),既然一張彩票包含15種組合,那么最少購買12972張彩票就夠了(194580 / 15 = 12972),就可以包含所有四個號碼的組合。如果有興趣的話,你可以寫一個程序,算出包含這194580種組合的所有彩票。
購買12972張彩票,需要25944元(12972 * 2)。根據前面的獎金額,二等獎的獎金是2385元,那么15個二等獎就是35775元(2385 * 15)。因此,投入25944元,可以無風險地獲得35775元。當然,這樣做的前提是,當期沒人猜中特等獎,否則獎金就會被大大稀釋。