有趣的統計學(3)

雖然平均來看,莊家的優勢勝率沒有改變,但由於莊家明牌是可視的,明牌不同時,莊家與玩家的勝率是有變化的。這也是 Bayes 所教導我們的原理:看統計數字不能只看平均值和標準差。往下鑽研看到「條件機率」的話,也許可以改變局勢。

上一回用了些章節,說明這個 python 模擬程式的大致狀況。實際做了模擬,發現玩家僅僅改變叫牌策略並不能克服「先手劣勢」。在單一的叫牌策略中,低於(不含) 15 點叫牌的話,莊家的勝率是比較低的,約為 53.7%。這一節,我們來認識一下,莊家在平均53.7% 的勝率下,有沒有我們可乘之機?

二十一點的通用規則中,莊家會顯示一張「明牌」(下表欄位為Bank_Card)。我們試著從明牌的角度來分析莊家的勝率是否跟明牌顯示的結果相關。程式並不困難,利用前節所提的 python 物件組合成一位莊家四位玩家五萬次牌局的模擬程式。結果是這樣:

Bank Card 
2 
3 
4 
5 
6 
7 
8 
9 
10 
Q 
K 
A 
Plays 
15172 
15350 
15475 
15355 
15595 
15592 
15512 
15480 
15108 
14895 
14940 
15544 
15758 
6633 
6785 
6514 
6431 
6254 
6720 
7187 
7832 
8295 
8405 
8458 
8809 
10151 
Loses 
7245 
7389 
7824 
7732 
8201 
7515 
6945 
6214 
5333 
4959 
5013 
5209 
4047 
Equals 
124? 
1185 
1138 
114? 
1141 
1457 
1379 
1434 
1480 
1521 
1459 
1525 
1570 
Win_Rate 
0.45 
0.46 
0.43 
0.47 
0.51 
0.56 
0.61 
0.63 
0.63 
0.63 
0.71

這張表告訴我們很重要的資訊,在平均53.7%的勝率下,莊家的明牌如果是 2~7,其勝率低於50%,而明牌如果是 8, 9 勝率在 50-60%,10 和 A 的勝率,都高於 60%。

修改玩家的叫牌策略,看來沒有很好的變化:低於(不含) 13 叫牌的結果如下表。我們發現一個規律,莊家明牌如果是 5,6, 降低叫牌可以增加1-2% 勝率。背後的邏輯很簡單,明牌如果 5 或 6,另一張不論是什麼牌,莊家都得再叫牌。只要叫牌,10點 (包括 10, J, Q, K)的機率約有 30%,很容易爆牌。另一個發現,莊家的明牌如果是 7,8,9,那麼莊家贏牌的機率變高約 2%。

Bank Card 
2 
3 
4 
5 
6 
7 
8 
9 
10 
Q 
K 
A 
Plays 
15728 
15924 
15280 
15248 
15472 
15656 
15588 
15412 
15320 
15204 
14932 
15156 
15080 
Wins 
7153 
7152 
6604 
6301 
6083 
7089 
7657 
8306 
8834 
8869 
8688 
8766 
10153 
Loses 
7613 
7724 
7772 
8049 
8489 
7400 
6810 
5909 
5157 
5065 
5009 
5100 
3643 
Equals 
962 
1048 
904 
898 
900 
1167 
1121 
1197 
1329 
1270 
1235 
1290 
1284 
Win Rate 
0.48 
0.48 
0.46 
0.44 
0.42 
0.49 
0.53 
0.58 
0.63 
0.64 
0.63 
0.63 
0.74

所以,我們可以調整叫牌策略,當莊家的明牌為 5,6 時,我們要確保自己不爆牌。其他的時候,採用玩家勝率較高的叫牌策略 – 低於 15 叫牌。不過,我們知道,雖然提昇了些許勝率,但莊家的明牌如果是 10,J,Q,K,A 玩家勝率輸莊家太多,這樣的改變對輸贏的結果並沒有太大的幫助。

Bank Card 
2 
3 
4 
5 
6 
7 
8 
9 
10 
Q 
K 
A 
Plays 
15796 
15332 
15292 
15648 
15540 
15352 
15452 
15252 
15216 
15508 
15360 
15204 
15048 
Wins 
7139 
6837 
6519 
6326 
6455 
6663 
7189 
7663 
8465 
8600 
8602 
8296 
9774 
Loses 
7314 
7319 
7660 
8504 
8252 
7322 
6916 
6174 
5187 
5350 
5218 
5310 
3710 
Equals 
1343 
1176 
1113 
818 
833 
1367 
1347 
1415 
1564 
1558 
1540 
1598 
1564 
Win Rate 
0.49 
0.48 
0.46 
0.43 
0.44 
0.48 
0.51 
0.55 
0.62 
0.62 
0.62 
0.61 
0.72

改變莊家的勝率不容易,但其實改變輸贏的結果不難。如果莊家的明牌對我們有利的時候,我們增加籌碼,例如,十倍的賭注,我們來看看結果:

當 莊 冢 5 , 6 , 12 以 下 : ; 牌 。 否 15 以 下 囗 L ; 牌 
玩 冢 : 1 ins : 21238 , 
loses = 24787 , in % = 0 · 461 , 
當 莊 冢 5 , 6 , 12 以 下 : ; 牌 。 否 15 以 下 囗 L ; 牌 
玩 冢 : 2 ins : 21459 , 
loses = 24574 , in % = 0 · 466 , 
當 莊 冢 5 , 6 , 12 以 下 : ; 牌 。 否 15 以 下 囗 L ; 牌 
玩 冢 : 3 ins : 21324 , 
loses = 24725 , in % = 0 · 463 , 
當 莊 冢 5 , 6 , 12 以 下 : ; 牌 。 否 15 以 下 囗 L ; 牌 
玩 冢 : 4 ins : 21262 , 
loses = 24666 , in % = 0 · 463 , 
基 本 邏 黽 , 17 以 下 牌 
money = 24386 
money=26029 
money = 25856 
money = 26823 
莊 冢 , w 工 ns : 98752 loses = 85283 in % = e . 537 , 
money= -13e94

哈,雖然平均來看,莊家的優勢勝率沒有改變,但由於莊家明牌是可視的,明牌不同時,莊家與玩家的勝率不同,這給了我們可乘之機。這同時也是 Bayes 所教導我們的原理:看統計數字不能只看平均值和標準差。往下鑽研看到「條件機率」的話,也許可以改變局勢。

改變二十一點的下注方式,將改變每次輸贏的期望值。如果每位玩家,在高優勢的牌局時提高下注的倍數,可以扭轉「輸牌等於輸錢」的情勢,變成「雖然輸牌的次數一樣,但能夠贏錢」…至於二十一點的規則,每一家賭場都有些許不同。一些書裏有說,某些賭場在發完牌,賭客還沒碰牌前,是可以調整賭注的。看來我們得去找到這些賭場,然後做做實驗了…

作者: George

林震 George 台灣大學機械系、機械研究所畢業 曾任:工廠廠長、技術開發主管、資材與供應鏈主管,現任上市公司資深協理、總管理處 6 Sigma MBB,台虹綠電總經理 著作:企業財務策略(華泰文化) email: clin8870@yahoo.com.tw