*All archives* |  *Admin*

<<07  2017/08  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31  09>>
レポート1「一向聴時対リーチ押し引き」その11 さらに改善を2
続き。

・他に攻める人がいるときも考える。

前にも一回取り上げたので、大体そのときの話とここまでの話をくっつければ済む話ですけど、ひとつ大変なことが。

p(t)の分布を求めるために6つの区分に分けて順目ごとに牌の種類数と放銃率を計算したわけですけど、ケアする対象が2人になるとp1(t)、p2(t)と2つ同時に分布を考える必要が出てくる=区分分けがかなり増えるという悲しい事態に。とりえない組み合わせもあるとはいえ、全部で26区分に急増。これはきつい・・・

でもがんばりましたよ。いちおう実装完了。さすがにこれをグラフにすると見にくいことこの上ないからしません。でも何も結果を書かないのもどうかと思うので、10順目時点で起こりやすい=数が多い順に書いていきましょう。
片-片 26%、片-現 現-片 ス1-ス1 各9%、両-両7%、現-現6%、現-ス1 ス1-現 各5%
とこんなところです。

なお計算については切る牌の区分(46、5、37、28、19、字)が決まったという条件下でそれが各人にとって無筋かスジか現物かは独立として計算してます。例えば片-ス3の組み合わせの場合、条件を満たすのは切るのが37の場合のみで、その確率は6/34、それが一人目に対して片無筋である確率はa_7(t)/6、二人目に対してスジ37である確率はa_8(t)/6。これらが独立として求めるものはこれら3つの積です。(ただしa_7は片無筋37の種類数、a_8は同スジ37)


・p(t)をより厳密に求める。

前まではリーチ者に対して牌の種類数だけ考えてある種類が切られる確率が時間によらず一定、として計算してましたが、1種類4枚という制限がある以上それではやはりまずかろうと思い、がんばってそのあたりを汲み取ることを考えます。

というわけで牌の種類で考えるのではなく牌1枚1枚について考えます。よってa_i(t)の定義は次のように変わります。
a_i(t):区分iに属する牌の枚数。ただし区分iは次のとおり。
1→両無筋46、2→片無筋46、3→スジ46、4→現物46、5→両無筋5、6→片無筋5、7→スジ5、8→現物5、9→片無筋37、10→スジ37、11→現物37、12→片無筋28、13→スジ28、14→現物28、15→片無筋19、16→スジ19、17→現物19、18→非現物字牌、19→現物字牌
(19区分・・・多いな。というかこう変えるとさっき書いた計算も書き直さないといかん。(涙))

またk_iは同様ですが切ってる確率という意味よりは切られやすさの比率という意味で使います。(↓再掲)
・リーチ者がt順目にそれぞれのカテゴリに属する牌を切っている確率をk_iとする。
i=1→456、i=2→37、i=3→28、i=4→19、i=5→字牌
これはひいいさんのサイトの「牌分析」の項を参照して、推定する。
i=1→1.7%、i=2→2.0%、i=3→2.8%、i=4→3.9%、i=5→4.6%、

まず簡単のためA(t)を次のように定義します。
gah;ghea;gra;
これはkで重みをつけた牌の合計であり、これを使うと区分iのある1枚が(動きなしの場面で)捨てられる確率はk_i/A(t)と求まります。

まず初期条件。
gare;gj;igargh;aegnae
その他のa_i(1)は0です。

次にt<t1の場合は(将来の)リーチ者にとって関係ある牌はリーチ者の捨て牌のみなので、漸化式は次のようになります。
CAQZOHWH.png
非現物については捨てられる確率を変えて、増える減るが1種類から4枚の4倍にしてるだけです。現物については非現物が切られたときはその牌が3枚現物にプラスされ、現物が切られたときはその牌が現物から1枚マイナスされます。なおa5~8は1~4のk2+k4を2k3に代えて、12~14は9~11のk2→k3、15~17はk2→k4とすればいいです。

次にt>=t1の場合はリーチ者と(攻めてる)自分がランダム牌切り=ツモ切りとして↑をちょっと変えたものを使います。B(t)を次で定義します。
gjagjihja;gh;agh
B(t)は単なる牌の合計(現物となってる捨て牌を除く)で、2つ目の等号は全136枚から現物となってる捨て牌分でリーチ前のt1枚とリーチ後の2(t-t1-1)枚を引いたものです。
これを使って同様に漸化式を立てます。
CAODIDDE.png
1/2は現物に関係ある牌を切るのが1順当たり2人いるためで、順目なので普通整数ですけど便宜上このように書いておきます。
2つの漸化式からa_i(t)を求めるわけですが、ご覧のとおりこれはt1に依存してます。これだけでも十分しんどいですが、後でもこれを使っていろいろ議論したいのでちょっとt1依存を考えるのはやりたくありません(Excelで3次元的になるのは手間)。そこでここに関してはt1=6順目で固定して計算させてもらいます。だめです!ちょっとやってみたらt1の影響かなりでかそうです。これでは固定して考えるわけにはいかない。かなりしんどくなること必至。改善した結果を出すのはまだ時間がかかりそうです。

なおこのa_i(t)からp_i(t)を求める式は次のようになります。
a;fgho;eyhg;egh


後の改善案はベタ降りが完全にできない場合を考慮することだけですが、上のa_i(t)とかを使うんでまずはa_i(t)を実装せねばならぬ。一応理論は固まりつつあるので書こうと思えば書けますけど、疲れてきたから今日はこれくらいで。
スポンサーサイト

コメントの投稿

Secret
(非公開コメント受付中)

コメント

プロフィール

nisi5028

Author:nisi5028
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
FC2カウンター
フリーエリア
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード