LoginSignup
9
2

More than 3 years have passed since last update.

ブラックジャックの勝率を上げたくて、ディーラーのバースト率を1300万回かけて計算してみた

Last updated at Posted at 2020-01-19

本投稿の目的

トランプゲーム「ブラックジャック」における『ディーラー』の、初手ごとのバースト率を計算します。

はじめに

トランプゲーム「ブラックジャック」では、まずプレイヤーが、表になっている2枚のカードから、「次のカードを引くかどうか」ということを判断します。
その際、例えば「Q」「K」のような強い手札なら、言うまでもなく「スタンド(引かずに終わる)」という選択をするでしょう。
しかし、例えば「10」「5」のような微妙な手札の場合、バースト(21を超えること)を恐れて次を引かない、ということも多いと思います。

file1.png

一方で、プレイヤーの得点が17未満でスタンドした場合、プレイヤーが勝つためには、「ディーラーがバーストする」ということを祈るしかありません。
それは、ディーラーは「17以上まで引き続ける」という世界共通のルールのためです。
ディーラーが17~21になれば、プレイヤーの負け。
ディーラーが22以上になれば、プレイヤーの勝ち。ということになります。

そのため、自分が勝利するために超重要になってくるのが、
ヒット(引く) or スタンド(引かない) の段階で、
「ディーラーはバーストするかどうか?」
の判断です。

file2.png

最初に場にカードを配る際、ディーラーの手札は1枚公開されています。
自分の手札が17未満の場合に、ヒットかスタンドかを決める場合には、
「今ディーラーが見えている手札1枚で、ディーラーがバーストする確率」
が、超重要な要素です。
そのままスタンドした場合には、ディーラーのバースト率 = プレイヤーの勝率になります。

そこで今回は、ディーラーの初手ごと(1~13)に、ディーラーのバースト率を計算してみます。

検証方法

  • 山札は、52枚のパターン、ならびに52枚4セット→208枚のパターンとする
  • プレイヤーの要素は取り入れず、ディーラーのみでゲームを行う
  • まずはディーラーの初手を、1に固定する
  • そのままディーラーがブラックジャックを実施する。17以上になるまで手札を引き続ける
  • 結果の点数と、バーストしたかどうかを記録する。これを100万回繰り返す
  • 100万回完了したら、ディーラーの初手を2に変更し、同じ処理を繰り返す
  • 以上の流れを、初手を1~13で、各100万回、合計1,300万回ブラックジャックを実施する
  • それぞれの初手ごとに、バースト率と、最終点数の推移を計算する

もちろん、手動で1,300万回やるのは無理なので、プログラミングします。
以前書いた記事で作ったC#のプログラミングを、そのまま流用しています。

結果

表にまとめました。
※各初手ごとに、100万回で検証しています。

一覧

初手 バースト率 52枚 バースト率 52枚×4セット
1 11.2814% 11.0174%
2 35.55% 35.5126%
3 37.5917% 37.521%
4 43.1333% 43.1712%
5 46.3084% 46.1001%
6 41.5123% 41.6665%
7 24.3494% 24.2288%
8 21.9696% 21.8951%
9 23.9652% 23.8183%
10 21.3837% 21.3874%
11 21.4819% 21.3717%
12 21.4571% 21.2703%
13 21.5109% 21.3918%

詳細

※列17~26は、各初手ごとの、最終得点の件数です。

52枚

初手 バースト率 17 18 19 20 21 22 23 24 25 26
A 0.1128 118327 130965 128928 131281 377685 27759 28862 23119 18892 14182
2 0.3555 136031 126789 133007 126322 122351 158993 62243 43618 49438 41208
3 0.3759 122115 129504 125603 127316 119545 101760 150105 53564 43424 27064
4 0.4313 130115 83044 115658 117970 121880 105475 96274 144579 47597 37408
5 0.4630 120217 124727 116605 73387 101980 103473 94185 88732 137907 38787
6 0.4151 169107 112990 106267 100042 96471 42985 92277 80877 75864 123120
7 0.2434 387910 140236 75133 76664 76563 60562 51687 36122 51196 43927
8 0.2196 136672 377436 131418 66549 68229 55427 50680 49100 46455 18034
9 0.2396 131998 55908 381094 127766 63582 59758 51737 47223 39158 41776
10 0.2138 123360 121664 123747 292919 124473 53869 49652 43324 37265 29727
J 0.2148 122605 121415 124099 292787 124275 53900 49987 43708 37291 29933
Q 0.2145 123389 121473 123674 292626 124267 54344 49961 43491 37175 29600
K 0.2151 124197 121259 123143 292671 123621 54053 50374 43746 37287 29649

52枚×4セット=208枚

初手 バースト率 17 18 19 20 21 22 23 24 25 26
A 0.110174 120105 130257 129570 130221 379673 27081 27781 22752 18423 14137
2 0.355126 135301 128728 133202 126417 121226 161894 61121 43059 48204 40848
3 0.37521 124457 128685 126461 126035 119152 100839 152559 52222 43363 26227
4 0.431712 129024 86097 114850 118188 120129 104863 94922 147297 46704 37926
5 0.461001 123223 123505 117132 73773 101366 102014 94220 86644 140007 38116
6 0.416665 169207 112435 106113 100377 95203 44794 90000 81480 74317 126074
7 0.242288 389351 140190 76237 76151 75783 59491 52267 35539 51753 43238
8 0.218951 136861 378666 130951 66870 67701 56378 49974 49385 45156 18058
9 0.238183 132904 55997 381364 127525 64027 59298 52728 46442 38801 40914
10 0.213874 122816 122645 123031 294161 123473 54521 49898 43413 36568 29474
J 0.213717 123444 122771 123676 292932 123460 54842 49581 43055 36602 29637
Q 0.212703 123176 123132 123733 293887 123369 54292 49248 43153 36714 29296
K 0.213918 122684 122974 123013 294415 122996 54997 49534 43216 36651 29520

52枚でやった場合と、52枚×4セットでやった場合、どちらも結果はほぼ同じでした。
また、もっとも大事なのが、「バースト率」です。

ディーラーの初手が1、つまりAの場合は、バースト率は11%しかありません。
つまり、ディーラーの初手がAで、17未満なのにプレイヤーがスタンドしてしまったら、その時点でプレイヤーは「勝率は11%しかない」ということになります。
なので、その時点でスタンドすることは、かなり分の悪い勝負になります。
多少頑張ってもヒットする、もしくは潔くサレンダー(降参)、という選択肢が生まれてくるわけです。

一方でディーラーの初手が4~6の場合、バースト率は4割を超えています。
なのでプレイヤーは、たとえ手札が17未満でスタンドしたとしても、4割強の確率で勝てるということです。それはそこまで、分の悪い勝負ではないでしょう。

こういったことが、上記の表から分かります。

※なお実際には、この確率は多少のブレがあります。
実際には、「すでに他のプレイヤーに配られているカードは二度と引かれない」ため、次に引くカードは、若干絞られます。
「場に小さな数がいっぱい出ているから、次引くカードは大きな数の可能性が高い」などです。
上記の表をベースに、確率の上下を計算しても良いかもしれないですね。


以上です。
この確率を暗記するだけで、ブラックジャックの勝率が大きく変わるかもしれないですね。
ブラックジャックをやる方は、是非覚えておいて欲しいです!

また、プログラミングを覚えてしまえば、こんな検証もお手軽にできます。
これからプログラミングをやってみたい!と考えている方は、是非楽しみにしていてくださいね。

リンク集

9
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
2