数孊ゲヌム2048

パヌト1.マルコフ連鎖を䜿甚しお勝぀ための最小移動数の蚈算


2048のスクリオンショット

最近の曎新の埌、 2048ゲヌムの「You win」画面に勝぀ために必芁な動きの数が衚瀺されるようになりたした。

蚘事の最初の郚分では、ゲヌム2048をマルコフチェヌンの圢でシミュレヌトし、分析しお、プレむダヌのスキルに関係なく、 平均で少なくずも938.8の動きが勝぀ために必芁であるこずを瀺すこずで、この質問に答えたす。 これは私たちに良いベンチマヌクを提䟛したす-あなたがそのような数の動きに぀いお勝぀こずができるなら、あなたはうたくプレヌしたす。

ゲヌムはタむル2ず4ランダムに远加するため、勝぀ために必芁な動きの数はランダム性に䟝存したす。 たた、分析により、勝぀前の最小移動数の分垃の暙準偏差は8.3移動であり、その党䜓的な圢状は二項分垃の混合によっお近䌌されおいるこずがわかりたす。

これらの結果を埗るために、2048の簡易バヌゞョンを䜿甚したす。フィヌルドにタむルを配眮する代わりに、...バッグに入れたす。 ぀たり、タむルを組み合わせるこずができるフィヌルドの圢状によっお課される幟䜕孊的制限を無芖したす。 この単玔化により、プレヌダヌが決定を行う必芁がなくなり1 、フィヌルド䞊のタむルの䜍眮を远跡する必芁がないため、䜜業が非垞に容易になりたす。

これらの幟䜕孊的制玄を取り陀くこずの代䟡は、勝利する前に予想される動きの䞋限のみを蚈算できるこずです。 幟䜕孊的制玄によりこの境界に到達できない堎合がありたす。 ただし、2048幎に倚くのゲヌムをプレむしたため科孊のため、実際にはこの境界に近づくこずができるこずも瀺したす。

2048やマルコフチェヌンに慣れおいない堎合は、心配しないでください。必芁な抂念に぀いおは蚘事党䜓で説明したす。 コヌドを研究しおチェヌンずグラフを生成する堎合に備えお、蚘事の執筆に基づいた研究品質のコヌドにはオヌプン゜ヌスがありたす 。

2048マルコフ連鎖ずしお


単玔化したゲヌム「2048 in a bag」をマルコフ連鎖ずしお提瀺するには、連鎖の状態ず遷移確率を指定する必芁がありたす。 各状態は、特定の時点でのゲヌムの「キャスト」のようなものであり、遷移確率は各状態の遷移確率を蚭定したす。

ここでは、珟圚各バッグにあるタむルを各状態で゚ンコヌドしたす。 タむルの順序は気にしないので、タむルを倚くのタむルずしお認識できたす。 最初は、バッグにはタむルがありたせん。぀たり、初期状態は単なる空のセットです。 以䞋に远加する回路の圢匏では、この初期状態は次のようになりたす。

マヌルコフ連鎖の初期状態


珟地準備


8぀のセップアップ状態のサンプルのモンタりゞュ。

新しいゲヌムの1ダヌスのフィヌルドの䟋。

2048幎に新しいゲヌムを開始するず、ゲヌムは2぀のランダムなタむルをフィヌルドに配眮したす䞊蚘の䟋を参照。 これをマルコフ連鎖で衚すには、初期状態から可胜な各状態ぞの遷移確率を指定する必芁がありたす。

幞いなこずに、 ゲヌムの゜ヌスコヌドを調べお、ゲヌムの仕組みを理解できたす。 ゲヌムがフィヌルドにランダムタむルを配眮するず、垞にこのシナリオに埓いたす。 セルをランダムに遞択し、倀2 0.9の確率たたは倀4 0.1の確率で新しいタむルを远加したす 。

「2048 in a bag」の堎合、無料のセルの怜玢に぀いお心配したせん。バッグの容量に制限を蚭けおいないからです。 䞎えられた確率でタむル2たたは4を远加するこずにのみ興味がありたす。 これにより、初期状態から次の3぀の状態になりたす。


これらの埌続の状態ず遷移確率を次のようにマルコフ回路図に远加できたす遷移確率ぱッゞに曞き蟌たれ、新しいノヌドず゚ッゞは青色でマヌクされたす。

初期状態ずその盎埌の状態を瀺すす有向ラフ{2、2}、{2、4}、{4、4}


ゲヌムをプレむする


タむルの最初のペアを配眮したら、ゲヌムを開始する準備ができたした。 実際のゲヌムでは、これはプレむダヌが同じタむルのペアを接続するために巊、右、䞊たたは䞋にスワむプする必芁があるこずを意味したす。 ただし、バッグを䜿甚したゲヌムでは、同じタむルのすべおのペアを結合するこずを劚げるものはありたせん。

バッグずゲヌム内のタむルを結合するためのルヌルは次のずおりです。同じ倀を持぀タむルのすべおのペアをバッグ内で芋぀け、それらを削陀したす。 次に、タむルの各ペアを倀が 2 倍の1぀のタむルに眮き換えたす 。

同䞀のタむルのペアを組み合わせお次の状態に移行した埌、ゲヌムは䞊蚘のプロセスを䜿甚しお1぀の新しいタむル、぀たり確率が0.9のタむル2たたは確率が0.1のタむル4をランダムに远加したす。

たずえば、可胜な埌続の状態状態を芋぀けるには \å·Š\ {2,2 \右\}\å·Š\ {2,2 \右\} 、最初に2぀のタむル2を1぀のタむル4に結合しおから、ゲヌムがタむル2たたはタむル4远加したす。 したがっお、可胜な埌続の状態は \å·Š\ {2,4 \右\}\å·Š\ {2,4 \右\} そしお \å·Š\ {4,4 \右\}\å·Š\ {4,4 \右\} それが起こったずき、私たちは以前に䌚った。 次に、これらの2぀の遷移を含む回路 \å·Š\ {2,2 \右\}\å·Š\ {2,2 \右\} 、それぞれ確率が0.9ず0.1の圢匏は次のずおりです。

{2、2}状態からの远加の遷移を瀺すす有向グラフ


埌続の状態状態に察しおこのプロセスを実行し続ける堎合 \å·Š\ {2,4 \右\}\å·Š\ {2,4 \右\} 、次に、同じタむルのペアがないため、ナニオンは䞍可胜ですが、次の状態は \å·Š\ {2,2,4 \右\}\å·Š\ {2,2,4 \右\} たたは \å·Š\ {2,4,4 \右\}\å·Š\ {2,4,4 \右\} 、新しいタむルの倀が2か4かによっお異なりたす。 曎新されたスキヌムは次のようになりたす。

{2、4}状態からの远加の遷移を瀺すす有向グラフ


レむダヌずスキップ


この方法で匕き続きトランゞションを远加できたす。 ただし、新しい状態ず遷移が远加されるず、スキヌムはより耇雑になる可胜性がありたす3 。 次の芳察を䜿甚しお、スキヌムを少し合理化するこずができたす。 バッグ内のタむルの合蚈は、遷移ごずに2たたは4増加したす 。 これは、同じタむルのペアを組み合わせおも、バッグ内たたはフィヌルド䞊-このプロパティは実際のゲヌムに適甚されるのタむルの倀の合蚈が倉曎されないためです。぀たり、ゲヌムはタむル2たたはタむル4远加したす。

状態の合蚈を「レむダヌ」にグルヌプ化するず、最初のいく぀かのレむダヌは次のようになりたす。
合蚈12たででの状態を瀺すす有向グラフ


スキヌムのノむズレベルを䞋げるために、埌のレむダヌでは、遷移のマヌクを0.9実線、䜕らかの方法でマヌクされおいない堎合および0.1砎線の確率で瀺したせん。

状態を合蚈によっお局にグルヌプ化するず、別の芏則性が明らかになりたす各遷移初期状態からの遷移を陀くは、次の局で確率0.9で、たたはその埌の局で確率0.1で発生したす。 これは、䞊の図の8、10、および12のレむダヌを芋るず特に明らかです。぀たり、ほずんどの堎合、ゲヌムは2を提䟛し、次のレむダヌに進みたすが、幞運な堎合があり、ゲヌムは4を提䟛したす。は、レむダヌをスキップできるこずを意味したす。これにより、目暙に少し近づき、タむル2048に到達したす。

ゲヌムの終わり


このプロセスは氞遠に続けるこずができたすが、 2048タむルに到達するこずのみに関心があるため、この時点で停止し、 2048タむルの状態をすべお吞収したす。 吞収状態には単䞀の遷移があり、確率1でそれ自䜓に぀ながりたす。぀たり、吞収状態に到達するず、それから抜け出すこずはできなくなりたす。

この堎合、すべおの吞収状態は「勝利状態」です-タむル2048を埗たので、ゲヌムに勝ちたした。 「かばんを䜿ったゲヌム」では、「倱う」方法はありたせん。なぜなら、実際のゲヌムずは異なり、フィヌルドたたはかばんがいっぱいになるず状況に陥るこずができないからです。

2048タむルを含む最初の状態は、2066の量のレむダヌ内にありたす。フィヌルド䞊で単䞀の2048タむルを取埗するこずは䞍可胜です。タむル1024 、タむル512などを結合するには、いく぀かの動きが必芁です。 したがっお、 2048タむルを持぀最初の状態のタむルの合蚈は2048よりも倧きくなりたす。

この最初の勝利状態の近くのグラフは次のずおりです 詳现を参照 。 吞収状態は赀で匷調衚瀺されたす

マルコフ連鎖の終わりのスクリリオンショット


非吞収状態がなくなるたで遷移を远加し続けるず、結果ずしお3487状態が埗られ、そのうち26状態が吞収されたす。 これでマルコフ連鎖の定矩は終わりです。 党回路図は非垞に倧きくなりたすが、お䜿いのコンピュヌタヌが5メガバむトのSVGファむルを凊理できる堎合、党回路図がここにありたす最初を芋るには少しスクロヌルする必芁があるかもしれたせん。 ズヌムアりトするず、次のようになりたす。

チェヌン党䜓のズヌムアりトビビュヌ


チェヌンの遞択


マルコフ連鎖の圢で2048ゲヌムバッグのモデリングに倚倧な劎力を費やしたので、すべおの吞収状態に到達するために必芁な動きの数を調べる必芁がありたす。 これを行う最も簡単な方法は、シミュレヌションを実行するこずです。 各シミュレヌションでは、初期状態から始たり、遷移確率に比䟋しおランダムに次の状態を遞択し、この状態からプロセスを繰り返すチェヌンに沿っお1぀のパスを生成したす。 勝぀ための動きの数に぀いお100䞇のシミュレヌションを完了するず、次の分垃が明らかになりたす。

938.8の平均が匷調衚瀺された、勝぀ための動きの数の分垃


青色の瞊線でマヌクされた平均は938.8移動に等しく、初期状態からの最初の遷移を陀き、 8.3移動の暙準偏差がありたす。 それで、ゲヌムに勝぀前の最小予想移動数に぀いおの質問に察する私たちの答えです

マルコフ連鎖理論により、トリッキヌな数孊を䜿甚しおこれらの特性のいく぀かを盎接蚈算するこずもできたす。 付録Aでは 、シミュレヌションを䜿甚せずに移動数の平均ず暙準偏差を蚈算する方法を瀺したす。 次に、 付録Bでは 、回路のいく぀かのプロパティを䜿甚しお、分垃曲線の圢状の少なくずも郚分的な説明を提䟛したす。

理論を実践でテストする


最埌に、これらの結果を実際の生掻でテストするために、私は2048幎に䜕床もプレむしたした科孊のためですそしお、勝った28ゲヌムで、移動数ず2048 4タむルに達したずきのフィヌルド䞊のタむルの合蚈を蚘録したした

2048の28の勝利ゲヌムのモンタヌゞュ


これらの数倀をスプレッドシヌトに曞き蟌んでプロットするず、次の散垃図が埗られたした。

勝った28詊合で勝ち、タむルに乗る


予想される最小移動数にプラスマむナス1暙準偏差を青でマヌクし、赀で2066タむルの合蚈をマヌクしたした。これは、2048タむルで可胜な最小タむルの合蚈です。

フィヌルド䞊のタむルの合蚈は重芁です。これは、タむルが倧きい堎合、通垞、ミスを犯しお別のタむルず組み合わせるこずができない堎所から倧きなタむルを運転したこずを意味するためです。 次に、別の倧きなタむルず組み合わせるこずができる堎所でこのタむルを再構築たたはフィヌルドの構成を倉曎しお適切な堎所に移動するために、さらに倚くの移動が必芁でした。

2048でうたくプレむした堎合、結果がグラフの巊䞋隅にグルヌプ化され、それらのほずんどが青い点線の間にあるず予枬できたす。 実際、ご芧のずおり、理想に到達するこずもありたすが、結果はあたり安定しおいたせん。右䞊隅にかなりの数のポむントがあり、䜙分な動きずタむルがたくさんありたす。

たた、このグラフは、分析によっお最小の予想移動数しか埗られないずいう事実を匷調しおいたす。 運が良かったゲヌムがいく぀かあり、927の動きず合蚈2076タむルの勝利を含め、938.8未満の動きで勝ちたしたこれは、遞択の䞀番䞋の行の巊から2番目の結果です。誀っお4枚のタむルを手に入れたした。たた、䜙分な動きを必芁ずする重倧なミスを犯さなかったためです。

原則ずしお、わずか519の動きでゲヌムに勝぀可胜性がある非れロの確率がありたす。 これを決定するには、チェヌンを通過し、垞にサむド4ぞの遷移を遞択し、タむル2048を達成するために必芁な遷移の数をカりントしたす。ただし、このような結果の確率は 0.1521 、たたは 10−521 。 私たちが芳枬しおいる宇宙では、およそ 1080 原子なので、そのようなゲヌムがあなたに萜ちるのを埅぀ために息を止めおはいけたせん。 たた、非垞に䞍運で、垞にタむル2受け取る堎合、わずか1032ムヌブで勝぀こずができたす。 そのようなゲヌムはより可胜性が高く、その確率は 0.91034 ほが等しい 10−48 、したがっお、おそらく、そのようなゲヌムは息を切らしお埅぀䟡倀はありたせん。 タむル2の出珟確率はタむル4の出珟確率よりもはるかに高いため、平均938.8の移動は519よりも1032にはるかに近くなりたす。

おわりに


このパヌトでは、同䞀のタむルの結合が垞に可胜である堎合の2048ゲヌムの進化をシミュレヌトするマルコフ連鎖を䜜成する方法を怜蚎したした。 これにより、ゲヌムの興味深い特性を蚈算するためにマルコフ連鎖を吞収する理論の手法を適甚するこずができたした。特に、勝぀には平均で少なくずも938.8の動きが必芁であるこずがわかりたした。

このアプロヌチを䜿甚できるようにした䞻な単玔化は、フィヌルド構造を無芖するこずです。 ぀たり、タむルをバッグに萜ずし、フィヌルドには眮かないこずをお勧めしたす。 2番目の郚分では、フィヌルドの構造を考慮する堎合のケヌスを怜蚎する予定です。 考慮する必芁のある状態の数が䜕桁も倧きくなるこずを孊習したすがおそらく、あなたが考えるほどではないかもしれたせんが、マルコフの意思決定プロセスの䞖界に入っお、マルコフ連鎖の䞖界を離れなければならないこずを理解したす、これにより、プレむダヌの方皋匏に戻るこずができたす。 原則ずしお、ゲヌムを完党に「解決」するこずができたす。぀たり、おそらく最適なプレむ方法を芋぀けるこずができたす。

付録Aマルコフ連鎖分析


マルコフ連鎖を蚭定した埌、数孊の力を䜿甚しお、シミュレヌションなしでその特性の蚈算を実行できたす。 これらの蚈算の倚くは、マルコフ連鎖が吞収マルコフ連鎖ず呌ばれる特別な皮類のマルコフ連鎖に属しおいるためにのみ可胜です 。

吞収チェヌンに関連するには、マルコフチェヌンが次の基準を満たしおいる必芁がありたす。

  1. 少なくずも1぀の吞収状態が必芁です。 䞊で芋たように、チェむンには26の吞収状態があり、それぞれの勝ち状態に2048タむルがありたす。
  2. 任意の状態が有限数の遷移で吞収状態に到達できたす。 これを決定する1぀の方法は、吞収状態以倖のチェヌンにサむクルがないこずを確認するこずです。吞収状態を陀いお、チェヌンは有向非埪環グラフです。

遷移行列


吞収マルコフ連鎖があるず刀断したので、次のステップは、その遷移行列を暙準圢匏で蚘述するこずです。 遷移行列は、䞊で定矩した遷移確率を順序付けお、芁玠が i、j、 状態からの遷移の確率です i 述べる j 。

遷移行列ぞ  mathbfP 吞収回路 r 吞収状態ず t 取り戻せない ぀たり非吞収性状態は正準型である可胜性があり、4぀の小さな行列に分割するこずが可胜であるべきです  mathbfQ 、  mathbfR 、  mathbf0 そしお  mathbfI そのような

 mathbfP= left beginarraycc mathbfQ mathbfR  mathbf0 mathbfIr endarray\右

右


どこで  mathbfQ 行列です t timest ある取消䞍胜な状態から別の取消䞍胜な状態に移行する確率を蚘述する  mathbfR 行列です t\回r回 非埩垰状態から吞収状態ぞの遷移の確率を蚘述する  mathbf0 行列を瀺したす r timest れロず  mathbfIr 状態を吞収するための遷移行列です。これは単䜍行列です r\回r回 。

回路の遷移行列を暙準圢匏に倉換するには、状態の順序を決定する必芁がありたす。 1状態が吞収されおいるか吞収状態が最埌であるかに埓っお状態を䞊べ、2タむルの合蚈昇順で䞊べられ、最埌に3字句順で䟝存関係を取り陀きたす。 これを行うず、次のマトリックスが埗られたす。

吞収マヌルコフ連鎖の完党な遷移行列


かなり倧きい、぀たりサむズ 3487\回3487回 、したがっお、ズヌムアりトするず、ほが斜めに芋えたすが、右䞋隅をズヌムむンするず、構造があるこずがわかりたす。特に、私たちが目指しおいる暙準的なビュヌがありたす。

吞収マルコフ連鎖の遷移行列の右䞋隅。より倚くの構造を瀺しおいたす


基本マトリックス


遷移行列の正準圢を取埗したら、それを䜿甚しお、チェヌンの基本行列ず呌ばれるものを芋぀けたす。 これにより、テむクオヌバヌ前に予想される遷移の数を蚈算できたす。぀たり、最終的に元の質問に察する答えが芋぀かりたす。

基本マトリックス  mathbfN 比范的蚭定されおいたす  mathbfQ アむデンティティ平等

 mathbfN= sum inftyk=0 mathbfQk mathbfN= sum inftyk=0 mathbfQk


どこで  mathbfQk 瀺す k マトリックス床  mathbfQ 。

アむテム i、j、 mathbfN 䞀定の解釈がありたすこれは、状態に入る予想回数です j 状態から始たるチェヌンをたどる堎合 i 。 これを芋るために、芁玠ずしお i、j 行列 Q 状態からの遷移の確率です i 述べる j 1぀の遷移で、芁玠 i、j 行列 Qk 状態に入る確率です j たさに k 状態に入った埌の遷移 i 。 特定の状態のペアの堎合 i そしお j すべおに぀いお述べた確率を芁玄したす k≥0 、状態に入る機䌚があるたびに金額が含たれたす j 状態の埌 i、察応する確率で重み付けされおおり、垌望する期埅倀が埗られたす。

幞いなこずに、基本行列は、逆行列ずしお、䞍快な無限の合蚈なしで盎接蚈算できたす。It−Q どこで It 単䜍行列です t×t 。 ぀たり、 N=(It−Q)−1 。 これの蚌拠は読者の宿題になりたす

勝぀ず予想される動きの数


基本行列を受け取った埌、どの状態からの遷移の予想数を芋぀けるこずができたす i 行のすべおの芁玠を合蚈するこずにより、吞収状態に i-蚀い換えれば、吞収状態に入る前の遷移の数は、途䞭で回埩䞍胜なすべおの状態で行わなければならなかった遷移の総数に等しくなりたす。

ベクトルによっお行列の積を蚈算するこずにより、すべおの状態のこれらのシリヌズの合蚈を䞀床に取埗できたすN1 どこで 1 列ベクトルを瀺したす t 。 以来 N=(It−Q)−1 線圢方皋匏を解くこずでこれを行うこずができたす

(It−Q)t=1


のために t 。 アむテム t 初期状態に察応空のセット {}、遷移の数です。この堎合、結果の数倀は939.8です。完了するには、枛算するだけです1、初期状態からの移行は移動ずは芋なされないためです。これにより、最終的な答え-938.8の動きが埗られたす。

たた、最小移動数の分散を次のように取埗するこずもできたす。

2(N−It)t−t∘t


どこで ∘は、アダマヌルの成分ごずの積を瀺したす。初期状態では、69.5の分散が埗られ、8.3ステップの暙準偏差が埗られたす。

付録B分垃曲線の圢状


基本行列を䜿甚しお、マルコフ連鎖からの勝利ぞの動きの分垃の平均ず分散の䞡方を蚈算できたこずは泚目に倀したす。しかし、ディストリビュヌションがこのような圢匏であるこずが刀明した理由を知っおおくずいいでしょう。ここでの私のアプロヌチはおおよそのものです。しかし、それはシミュレヌションからの経隓的な結果ず密接に䞀臎し、いく぀かの有甚な情報を提䟛したす。

先に行った芳枬に戻るこずから始めたす。フィヌルド䞊のタむルの合蚈は、遷移ごずに2たたは4ず぀増加したす初期状態からの最初の遷移を陀く。以䞋で説明するように、tileを取埗するのではなく、フィヌルドで特定の量を取埗するこずに関心がある堎合2048、二項分垃を䜿甚しお必芁な遷移数を蚈算するのは非垞に簡単です。

ですから、次の質問はどれだけ受け取りたいかずいうこずです。䞊蚘のマルコフ連鎖の分析から、26の吞収勝利状態があるず刀断したした。たた、それらは異なる「量の局」にあるこずもわかりたした。぀たり、私たちが目指しおいる量は1぀ではなく、いく぀かありたす。各状態が吞収される確率を知る必芁がありたす。それは吞収の確率ず呌ばれたす。次に、各吞収状態の吞収確率を合蚈の個別のレむダヌに芁玄しお、特定の結果の合蚈で勝぀確率を芋぀けるこずができたす。

吞収確率


幞いなこずに、吞収確率は基本行列からも芋぀けるこずができたす。特に、線圢方皋匏を解くこずでそれらを取埗できたす

(It−Q)B=R


マトリックス甚 B サむズ t×r その芁玠 i、j 状態での吞収の確率です j 状態から始たる i 。前ず同じように、初期状態から開始するずきの吞収の確率に興味がありたす。吞収の確率のグラフを䜜成するず、15の吞収状態があり、その確率はグラフに衚瀺するのに十分な倧きさ少なくずも10−3 

Absorbing probabilities for the Markov chain


特に、ほずんどのゲヌムは終了たたは状態 {2,2,8,8,2048} 合蚈が2068幎、たたは州別 {2,4,16,2048} 、合蚈は2070です。局の合蚈ですべおの吞収状態を合蚈するず、局の合蚈の完党な確率が埗られたす。

Total absorbing probabilities by sum of tiles


二項確率


目暙を達成できる量があり、それぞれの目暙を達成する頻床がわかったので、次の質問は次のずおりです。特定の量を埗るために必芁な動きはいく぀ですか。䞊蚘のように、二項分垃に関連しおこの問題を認識できたす。これにより、特定の数の「詊行」から特定の数の「成功」の確率を蚈算できたす。

この堎合、「詊行」ずは移動を意味し、「成功」ずはゲヌムがタむルを䞎える移動を意味し4たす。䞊蚘のように、これは0.1の確率で発生したす。ここでの「倱敗」ずは、ゲヌムがタむルを䞎える動きであり、20.9の確率で起こりたす。

この成功の解釈を考えるず、䞎えられた量を埗るためにS のために M 必芁な動き S2−M からの成功 M 動きたす。 これは、各移動が少なくずも远加するために発生したす 2 それは䞀般的に䞎える 2M 、各成功は远加の量に远加されたす 2 䞀般的に貢献 2(S2−M)=S−2M 。 これらの倀を远加するず、必芁な量が埗られたす S 。

次に、金額を取埗する共同確率 S 移動回数 M 二項であり、特に

Pr(M=m,S=s)=B(s2−m;m,0.1)


どこで B(k;n,p) は二項分垃の質量分垃関数であり、正確に取埗する確率を䞎えたす k の成功 n 成功の確率が p 、぀たり

B(k;n,p)=(nk)pk(1−p)n−k


どこで (nk)は二項係数を瀺したす。

目暙額がわかったのでS、私たちが努力しおいるので、関心のある金額が共同分配からのものであるずいう事実を考慮しお、動きの条件付き分垃を蚈算できたす。぀たり、芋぀けるこずができたすPr(M|S) どうやっお

Pr(M|S)=Pr(M,S)Pr(S)


どこで Pr(S) 加算により共同分垃から取埗 M あらゆる可胜な量に察しお S 。 それは泚目に倀する P(S)ゲヌムはタむルを䞎えるこずで金額を「スキップ」する可胜性が垞にあるため、可胜な金額ごずに1未満です4。

各目暙量に぀いおこれらの条件付き分垃をすべお受け取ったので、それらを加算しお、目暙量の総吞収確率で重み付けし、総確率を取埗するこずができたす。これにより、シミュレヌションの分垃ずかなり正確に䞀臎したす。

Simulated and binomial mixture model distributions for minimum moves to win


ここでは、シミュレヌトされた分垃は灰色の列で瀺され、色付きの領域は各条件付き分垃を瀺しおいたす。各条件付き分垃は、その合蚈の吞収の合蚈確率に埓っおスケヌリングされ、平均しおより倚くの量がより倚くの動きを必芁ずするため、いく぀かの動きによっおシフトされたす。

この結果の1぀の解釈最適なゲヌムでは、勝぀ための動きの数は、プレむダヌが2048タむルを収容するのに十分な倧きさをどれだけ早く取埗できるかに䟝存し、それ4は二項分垃に続くタむルの数に䟝存したす。



この蚘事の䞋曞きを線集しおくれたHope ThomasずNate Stemenに感謝したす。

泚釈


  1. , , . .
  2. : , 2 , , , 4 , 8 .
  3. dot graphviz . dot , .
  4. 「You win」画面の倖芳は、このデヌタを収集する数か月にわたっお数回倉化したした。蚘録のためにこれらすべおの月の間、私は2048幎にプレヌしただけではありたせん。

パヌト2.組み合わせを䜿甚した状態のカりント


Screenshot of 2048 with an infeasible board configuration

前のパヌトで、2048ゲヌムに勝぀には平均で少なくずも938.8の移動が必芁であるこずがわかりたした。これらの蚈算を実行できるようになった䞻な単玔化は、フィヌルドの構造を無芖したこずです-本質的に、タむルをフィヌルドに眮くのではなく、バッグに投げ入れたした。この「バギング」された単玔化のおかげで、3486州のみのマルコフ連鎖の圢でゲヌムをシミュレヌトするこずができたした。

このパヌトでは、「バッグ」を単玔化せずに状態の数を蚈算する最初の詊みを行いたす。぀たり、この郚分では状態フィヌルドの完党な構成が含たれ、フィヌルドの各セルに存圚するタむルが決定されたす。したがっお、タむルおよびタむルのないセルの䜍眮が含たれるので、このタむプの状態がはるかに倚くなるこずを期埅する必芁がありたす。埌で芋るように、それはたさにそうです。

これを行うために、列挙型コンビナトリクスの単玔なテクニックを䜿甚しお、たずえば䞊蚘で説明したように、ゲヌムでは発生できない曞き蟌み可胜な状態を陀倖したす。結果は、2048に類䌌したすべおのゲヌム、さらには4x4だけでなく他のフィヌルドでプレむされたゲヌムや他のタむル2048小さいフィヌルドや小さいタむルでのこのようなゲヌムの状態は、2048幎の完党な4x4ゲヌムよりもはるかに少ない状態であり、ここで䜿甚される手法は、小さいフィヌルドサむズで予想される条件の数を枛らすのに比范的効果的であるこずがわかりたす。ボヌナスずしお、4x4フィヌルドがタむルに到達できる最小の正方圢フィヌルドであるこずもわかり2048たす。グラフの実装たたはコヌドを評䟡したい堎合、

この郚分のベヌスずなる研究品質のコヌドはオヌプン゜ヌスです。

ベヌスラむン


2048ゲヌムの状態数を掚定する最も明癜な方法は次のずおりです。16個のセルがあり、各セルは空にするか、倀が2の11の环乗2から2048のいずれかであるタむルを含むこずができたす。セル、぀たり合蚈 1216 、たたは184兆およそ 1017この方法で蚘述できる倀。比范のためいく぀かの掚定によるず、チェス盀䞊の䜍眮の可胜な構成の数はほが等しい1045、最近の掚定によるず、ゲヌムでは10170 状態なので、少なくずも 1017-これはたくさんありたすが、これはゲヌムの蚘録ではありたせん。

より䞀般的な圢匏では、このような2048ゲヌムは次のように衚すこずができたす。B フィヌルドのサむズであり、 K -倀を持぀勝利タむルの皋床 2K 。 䟿宜䞊、 C フィヌルド内のセルの数、぀たり C=B2 。 4x4フィヌルドを持぀通垞の2048ゲヌムの堎合 B=4 、 C=16 、そしお K=11 なぜなら 211=2048 、および可胜な状態数は

(K+1)C


次に、考えられる意味を明確にする方法を芋おみたしょう。

たず、タむルを取埗するずゲヌムが終了するため2K、このタむルがどこにあり、それ以倖のフィヌルドに䜕があるかは気にしたせん。したがっお、すべおの状態をタむルず組み合わせるこずができたす2K「勝利」ずいう特別な状態にありたす。他の状態では、各セルは空であるか、タむルの1぀を含むこずができたすK−1 。 これにより、関心のある条件の数が枛りたす

KC+1


どこで 1-これは「勝利」の状態です。

第二に、これらの条件のいく぀かに気づくこずができたすKCゲヌムで発生するこずはありたせん。特に、ゲヌムのルヌルは2぀の有甚なプロパティを意味したす。

プロパティ1フィヌルドには垞に少なくずも2぀のタむルがありたす。

プロパティ2フィヌルドには垞に少なくずも1぀のタむル2たたはタむルがありたす4。

最初のプロパティは尊重されたす。なぜなら、2぀のタむルでゲヌムを開始し、それらを結合しおも、ただ1぀あり、その埌、ゲヌムはランダムなタむルを1぀远加し、2぀存圚するからです。ゲヌムは垞に移動埌にタむル2たたはタむルを远加するため、2番目のプロパティが尊重され4たす。

したがっお、正しい状態では、フィヌルド䞊に少なくずも2぀のタむルが必芁であり、そのうちの1぀はタむル2たたはタむルでなければなりたせん。4。これを考慮するために、タむル2なしたたはタむルなしのすべおの状態を枛算できたす4。(K−2)C、1぀のタむル2ず残りの空のセルのみを含む状態、C、1぀のタむル4ず残りの空のセルのみを含む状態、C 。 考えられる意味を䞎えおくれたす。

KC−(K−2)C−2C+1


状態。 もちろん、い぀ K たたは C 玠晎らしいですね KC、぀たり、䞻な甚語ですが、小さな倀の堎合、この調敎はより重芁です。

この匏を䜿甚しお、さたざたなサむズのフィヌルドず最倧タむルの可胜な状態数を枛らしたしょう。

最倧タむルフィヌルドサむズ
2x23x34x4
87319 66543,046.689
16233261 6154,294,901,729
325371 933 425152544 843 873
641,0339 815 5352 816 814 940 129
1281,76938 400 46533 080 342 678 945
2562 793124 140 015278 653 866 803 169
5124 153347 066 8651 819 787 258 282 209
10245 897865 782 2559718525 023 289 313
20488 0731 970 527 18544 096 709 674 720 289

2x2ず3x3のフィヌルドを持぀ゲヌムでは、4x4のゲヌムよりも状態がはるかに少ないこずがすぐにわかりたす。さらに、4x4ゲヌムで䜿甚可胜なタむルの数を2048“オンリヌ” 44兆個、たたは〜1016 。

レむダヌで数える


状態のこれらの数をもう少し理解するために、我々は、前のセクションに有甚である、もう䞀぀の重芁な特性を䜿甚するこずができたす

プロパティ3各タヌン2たたは4にフィヌルド増加のタむルの合蚈

このルヌルが芳察され、2枚のタむルの劎働組合ので、フィヌルド䞊のタむルの量は倉曎されたせん。その埌、ゲヌムは2たたはを远加したす4。

プロパティ3は、ゲヌム䞭に状態が繰り返されないこずを意味したす。これは、タむルの合蚈によっお状態をレむダヌに゜ヌトできるこずを意味したす。ゲヌムが合蚈10の局の状態にある堎合、次の状態は合蚈12たたは14の局にあるこずがわかりたす。各局の状態の数も蚈算できるこずがわかりたす。

させる Sフィヌルド䞊のタむルの量を瀺したす。その方法の数を数えたいC それぞれが2から2の环乗です 2K−1 取埗するために折り畳むこずができたす S 。

幞いなこずに、これは組合せ論のよく研究問題の䞀皮であるカりント曲敎数。䞀般に、敎数の構成S 合蚈する敎数の順序付けられたコレクションです S ;集合䜓の各敎数はpartず呌ばれたす。たずえば、敎数3 すなわち、4぀の構成がありたす 1+1+1 、 1+2 、 2+1 そしお 3 。たずえば、2のべき乗や䞀定数のパヌツの存圚など、パヌツに制限がある堎合、そのような構成はlimitedず呌ばれたす。

さらに幞いなこずに、Chinn and Niederhausen20041はすでにこのタむプの限られた構成のみを研究しおおり、再垰を開発しお、各郚分が2の环乗である特定の数の郚分がある構成の数を蚈算できるようにしたした。させる N(s,c) 党䜓の構成正の数を瀺したす s たさに c パヌツ。各パヌツは2の环乗です。 それから

N(s,c)={∑⌊log2s⌋i=0N(s−2i,c−1),2≀c≀s 1,c=1,  s - 2 0,


なぜなら、それぞれの構成のために数字 s−2i で c−1 構成を取埗できる郚分 s から c パヌツ、倀を持぀1぀のパヌツを远加 2i 。

ここで、合蚈の境界に小さな倉曎を加える必芁がありたす。2から始たる2のべき乗を䜿甚する必芁がありたす。 2K−1 タむルがある堎合 2Kその埌、ゲヌムに勝ちたす。これを行うには、Nm(s,c) 番号構成の数を瀺したす s たさに c パヌツ。各パヌツは2の环乗です。 2m 前に 2K−1 。 䞊蚘のロゞックにより、これは次の方皋匏で定矩できたす。

Nm(s,c)={∑K−1i=mN(s−2i,c−1),2≀c≀s 1,c=1,  s=2i  i∈{m,
,K−1} 0,


これで、 c パヌツですが、パヌツがアップするように数匏が必芁です c 。 前のセクションず同じ掚論を䜿甚できたす。タむル2たたは4のない状態を枛算したす。 N3(s,c) 。 プロパティ1によるず、少なくずも2぀の郚分が必芁なので、次のように芁玄し始めたす。 c=2 。 これにより、合蚈を持぀状態数の可胜な倀ずしお䞎えられたす s

C∑c=2(Cc)(N1(s,c)−N3(s,c))


ここに (Cc)遞択肢の数を䞎える二項係数ですc 可胜性の Cタむルが配眮されるセル。それらをチャヌトにマヌクしたしょう。

Number of states by sum of tiles (with K=11)

順序に関しおは、2x2ゲヌムではレむダヌあたり60ステヌトを超えるこずはなく、3x3ゲヌムではレむダヌあたり最倧玄300䞇ステヌト、4x4ゲヌムでは最倧玄32兆 1013レむダヌごずの状態。州の数はゲヌムの初期段階で急速に増加したすが、その埌、フィヌルドがいっぱいになるず速床が䜎䞋し、埐々に枛少したす。曲線の枛少郚分では、特に倧量にギャップが芋られたす。これは、フィヌルドに適合するタむルが存圚せず、この倀で合蚈される堎合に発生する可胜性がありたす。

氎平軞の䞊限は、C それぞれの倀は 2K−1 、぀たり、達成可胜な最倧量は C2K−1、たたは2048たでの4x4ゲヌムの堎合は16,384です。

最埌に、4から4たでのレむダヌのすべおの可胜な合蚈にわたっお各レむダヌの状態の数を合蚈する堎合、泚目に倀したすC2K−1そしお、特別な勝利状態に1぀を远加するず、前のセクションで予想されたのず同じ数の状態を取埗したす。これは、掚論の正しさを調べるのに圹立぀テストです。

レむダヌの到達可胜性


プロパティ3のもう1぀の有甚な結果は、2぀の連続するレむダヌに状態がない堎合、埌のレむダヌに到達できないこずです。これは、タヌンごずに最倧4ず぀量が増加する可胜性があるためです。状態のない2぀の隣接するレむダヌがある堎合、合蚈は次のレむダヌに「ゞャンプ」するために1回の移動で6増加したすが、これは䞍可胜です。したがっお、䞊蚘の蚈算を䜿甚しお状態を含たない局の合蚈を芋぀けるず、最埌の到達可胜な局の埌に到達䞍胜な局の状態を陀倖するこずにより、可胜な倀を絞り蟌むこずができたす。到達可胜なレむダヌの最高の合蚈到達䞍胜なタむルなし2048

フィヌルドサむズ最倧達成可胜局量
2x260
3x32,044
4x49,212

この衚は、合蚈60以䞋のレむダヌに32タむル64を衚瀺できないため、2x2フィヌルドで達成できる最倧タむルがtileであるこずも瀺しおいたす。同様に、3x3フィヌルドの最倧到達可胜タむルはtile 1024です。これは、4x4フィヌルドがタむル2048 2に到達できる最小の正方圢フィヌルドであるこずを意味したす。4x4フィヌルドの堎合、タむルに到達する前に2048぀たり、勝利なしに到達できるレむダヌの最倧量は9,212ですが、タむルが解決される2048ず、より倚くの量を達成できたす。

レむダヌの到達可胜性を考えるず、状態数の新しい可胜な倀は次のようになりたす。

最倧タむル方法フィヌルドサむズ
2x23x34x4
8ベヌスラむン7319 66543,046,689
レむダヌの到達可胜性7319 66543,046,689
16ベヌスラむン233261 6154,294,901,729
レむダヌの到達可胜性233261 6154,294,901,729
32ベヌスラむン5371 933 425152 544 843 873
5291 933 407152 544 843 841
641 0339 815 5352 816 814 940 129
9059 814 4372 816 814 934 817
1281 76938 400 46533 080 342 678 945
90538 369 57133 080 342 314 753
2562 793124 140 015278 653 866 803 169
905123 560 373278 653 849 430 401
5124 153347 066 8651 819 787 258 282 209
905339 166 4851 819 786 604 950 209
10245 897865 782 2559 718 525 023 289 313
905786 513 8199 718 504 608 259 073
20488 0731 970 527 18544 096 709 674 720 289
9051 400 665 57544 096 167 159 459 777

これは2x2フィヌルドに倧きな圱響を䞎え、ゲヌムの状態数を8,073から905に2048に枛らしたす。2x2フィヌルドで32より倚くのタむルを達成するこずは䞍可胜であるため、到達可胜な状態数の倀はその埌の最倧タむルの905から増加しないこずに泚意しおください32。たた、3x3フィヌルドにわずかに圱響したすが、4x4には比范的小さな圱響がありたす。ゲヌムの堎合、合蚈で玄5,000億の状態を2048たで取り陀きたす

。グラフィック圢匏では、このデヌタは次のようになりたす。

Estimated number of states each for board size and maximum tile

おわりに


2048ゲヌムず、より小さなボヌドずより小さな最倧タむル䞊の同様のゲヌムの状態数の倧たかな芋積もりを取埗したした。これたでのずころ、4x4ゲヌムの2048たでの状態数の最良の掚定倀は玄44兆〜1016 

倚くの理由でゲヌムで達成できない条件を考慮に入れるこずができるため、この芋積もりやその他の芋積もりは倧幅に誇匵されおいる可胜性がありたす。たずえば、蚘事のこの郚分のむラストからタむトルたでの状態

An infeasible board position with three 2 tiles in the middle with empty cells around

私たちが調べたすべおの制限を満たしたすが、ゲヌムでそれを達成するこずはただ䞍可胜ですそれに入るには、タむルをある方向に移動する必芁があり、2぀のタむル2をフィヌルドの端に移動したす。おそらく、これを念頭に眮いお䞊蚘の蚈算匕数を埮調敎する方法があるでしょうそしお、おそらく、他の制限に合わせお。しかし、今のずころ、これを行う方法がわかりたせん。

次の投皿では、真に達成可胜な状態の数がはるかに少なく、実際にそれらをリストしおいるこずがわかりたす。3x3ず4x4のフィヌルドにはただ倚くの機胜があるので、数孊だけでなく情報凊理理論の知識も必芁です。



この時点たで読んだこずがあるなら、Twitterで私をフォロヌする䟡倀があるかもしれたせんし、Overleafで採甚リク゚ストを送っおくれるかもしれたせん。

泚釈


  1. Chinn, P. and Niederhausen, H., 2004. Compositions into powers of 2. Congressus Numerantium , 168, p.215. ()
  2. , , , 2048 . , , . , , , 4x4 131072 ( 217 ), . — , , . , - , 8192 , « » 131072

Source: https://habr.com/ru/post/J339342/


All Articles