Labels

ガーナ憲法和訳124 AnimeManga121 アニメまんが121 ザンビア憲法和訳119 ジンバブエ憲法和訳117 ケニア憲法和訳114 Literature113 高認化学過去問85 ドミニカ共和国憲法和訳84 オンライン補習塾83 高認物理過去問83 ウルグアイ憲法和訳82 タンザニア憲法和訳74 Education72 JapaneseHistory70 ナミビア憲法和訳70 古文・漢文70 日本史70 Story69 物語69 各国憲法インデックス和訳67 マラウイ憲法和訳66 コンゴ民主共和国憲法和訳59 アンゴラ憲法和訳56 モザンビーク憲法和訳52 法律和訳52 フリーランス時代51 ペルー憲法和訳51 パラグアイ憲法和訳50 南スーダン憲法和訳50 シエラレオネ憲法和訳49 ボツワナ憲法和訳48 ホンジュラス憲法和訳47 ルワンダ憲法和訳47 メキシコ憲法和訳46 グアテマラ憲法和訳45 チリ憲法和訳45 Blog43 パナマ憲法和訳43 ChineseHistory40 中国史40 派遣エンジニア・設備管理技術者時代40 ブルンジ憲法和訳39 エルサルバドル憲法和訳38 チャド憲法和訳37 中央アフリカ憲法和訳36 コンゴ共和国憲法和訳35 スーダン憲法和訳34 ニカラグア憲法和訳33 行政書士時代33 ガボン憲法和訳29 マダガスカル憲法和訳29 WebLog28 トーゴ憲法和訳27 DragonBall26 ドラゴンボール26 ライトノベル26 第二種電工数学入門講座26 Ghibli25 Gundam25 アルゼンチン憲法和訳25 ガンダム25 ジブリ25 Game22 TarotCard22 ゲーム22 セネガル憲法和訳22 タロットカード22 ベナン憲法和訳20 健康・医療20 カメルーン憲法和訳19 論文和訳19 Alternatives18 リベリア憲法和訳18 FamousPerson15 有名人15 Dai14 WorldHistory14 ダイの大冒険14 世界史14 海運会社員時代13 JapaneseRealEstateLaw12 不動産法入門講座12 NPO職員時代11 Hokuto10 RurouniKenshin10 るろうに剣心10 不動産営業時代10 北斗の拳10 学習進度10 ココナラ8 Treemapping7 ツリーマップ7 Poetry5 叡智3
Show more

サンクトペテルブルクのギャンブルの参加費が、本当に$\log_2 n$になるのかExcel VBAで検証してみた。

1 ウィリアム・フェラーの解答

 前回、サンクトペテルブルクのパラドックスについて、ウィリアム・フェラーの解答を拝借して考察してみた。
・サンクトペテルブルクのギャンブルを世界規模で行う場合の参加費。:https://tanakah17191928.blogspot.com/2023/10/blog-post_28.html

ゲームを$n$回繰り返す場合、第$n$回目の獲得賞金を$X_n$とすると、

$\dfrac{X_1 + X_2 + \cdots + X_n}{n} = \log_2 n$

これをExcel VBAで検証してみることにした。

2 Excel VBAに1~10000回のサンクトペテルブルク・ギャンブルをさせてみた

Option Explicit
 
Sub keisan()
    Dim i As Long, j As Long, n As Long
    Dim c As Integer
    Dim M As Long, TM As Long

    For n = 1 To 10000
        TM = 0
        For j = 1 To n
            M = 0
            i = 1
            Do
                Randomize
                c = Int(2 * Rnd)
                    If c = 1 Then
                        Exit Do
                    End If
                M = 2 ^ (i - 1)
                i = i + 1
            Loop
            TM = TM + M
        Next j
        Cells(n, 3).Value = TM / n
    Next n
End Sub
グラフにして$\log_2 n$と比較すると、【訂正箇所については、後述の追記参照】
なんか想像してたのと違う(´・ω・`)
$\dfrac{1}{2}\log_2 n$と比較すると、

3 100人の参加者に1~1000回のサンクトペテルブルク・ギャンブルをさせてみた(100人の平均値)

 100人の参加者にそれぞれ1~1000回ずつプレイさせて、回数ごとに100人の平均値を計算するという方法をプログラムで表現してみた。
Option Explicit
 
Sub keisan()
    Dim i As Long, j As Long, k As Long, n As Long
    Dim c As Integer
    Dim M As Long, TM As Long, TTM As Long
    
    For n = 1 To 1000
        TTM = 0
        For k = 1 To 100
            TM = 0
            For j = 1 To n
                M = 0
                i = 1
                Do
                    Randomize
                    c = Int(2 * Rnd)
                        If c = 1 Then
                            Exit Do
                        End If
                    M = 2 ^ (i - 1)
                    i = i + 1
                Loop
                TM = TM + M
            Next j
            TTM = TTM + TM
        Next k
        Cells(n, 3).Value = (TTM / 100) / n
    Next n
End Sub
グラフにして$\log_2 n$と比較すると、【訂正箇所については、後述の追記参照】
やっぱりなんか想像してたのと違う(´・ω・`)
$\dfrac{1}{2}\log_2 n$と比較すると、
プログラムに間違いがあるのか、そもそもVBAでシミュレーションすることに無理があるのか、それともこれはこれで正しいのか?
少し頭を冷やしてから再考してみたい。

4 追記:訂正箇所について

 $\log_2 n$ではなく、$\dfrac{1}{2}\log_2 n$に訂正しました。
1回目に表が出たときの賞金を1円とするか、2円とするかの違いみたいです。

Popular posts from this blog

高等学校卒業程度認定試験(高認)数学過去問解説

『おっさん陰陽師の友人は元SKE48(1)【竹井カナ編】』目次

『おっさん陰陽師の友人は元SKE48(2)【梅田桃子編】』目次