カテゴリ
以前の記事
|
まだ色々と問題は多いけど、とりあえず牌譜の解析ができるようになったので、これから今まで個人的に見てみたかったことなどを解析していこうと思います。ちょっとまだサンプルも少ないんですが後々増やしていこうと思います。
まずは、毎回のようによく感じていたことで、様々な局面で「この手はアガれるのか?」ということに対しての指標を調べてみました。手元の手牌がアガれない可能性が高いことがあらかじめ分かれば、守備的な手組みをして無駄な放銃も避けられるのではないかということです。 たとえば配牌1シャンテンならば50%弱の確率でアガれることが分かります。配牌で1シャンテンだったりすると、まずアガれると思いがちですが、実際は2回に1回くらいはアガれないんですね。 各シャンテン数ごとの和了率は巡目が進むにつれて下がっていきます。和了率を下げる要因としては流局の他に他家の和了があります。 つまり、対局中の誰かが最初に聴牌するのは6巡目くらいになる。また和了は9~11巡目くらいに最も発生するということが分かります。最初の図で12巡目で1シャンテンのときの和了率が10%もありませんが、これには他家にアガられてしまう可能性が高いことが理由にあるでしょう。 そこで、ある巡目で自分が最終的にアガれる可能性が高いか、それとも最終的に他家がアガる、もしくは自分が放銃してしまう可能性が高いかを知っておくことは手を進める上で重要な指標になるのではないかと考えました。 まずは手始めにこんな解析をしてみましたが、もうちょっと詰められそうです。たとえば同じ1シャンテンでも愚形-愚形の1シャンテンと完全イーシャンテンではアガりやすさは全然違うだろうし。まあ、暇を見て色々解析してみようと思います。 追記:2011-02-19 巡目ごとのシャンテン数に対する和了率・放銃率の図に被ツモ率データを追加しました。 追記:2011-02-20 サンプルデータを増やして再計算しました。 #
by doraaka
| 2011-02-19 03:49
| 牌譜解析
実は韓国でも麻雀が行われてるって知ってた?
そりゃあそれほどメジャーではないんだろうと思うけど。 2週間ほど韓国に出張中のHAZです。 今回の出張の中で、もし空き時間でもあれば是非一度韓国の雀荘なるものを見てみたいと思っていた。そこで麻雀評論家の梶本琢程さんからソウルにある雀荘の情報を教えていただいた。 GoogleMapの位置情報を教えてもらったので、それを頼りに地下鉄に乗って最寄駅へ。で、そこで気づいた。 あれ?俺今何て雀荘に行こうとしてるの? せめて雀荘の名前くらい聞いておけばよかったなあ、つーか事前準備足らな過ぎ^^; 何しろ今手元にあるのは地図に描かれた特に周囲に大きな目印もない一点データだけなんだ・・・。 でも、まあ何とかなるか。 韓国の麻雀は日本の形式を取り入れてるみたいだから、多分看板に「麻雀」とか「雀荘」とか漢字で出てたり、日本みたいに麻雀牌の絵が出てたりするだろ、きっと!どれどれ?ざっと看板を見渡してみた↓ 別件の仕事の時間が迫ってたので一旦撤退し、夜に再びやってくると完全に歓楽街の雰囲気に変わってた。 さてどうするか・・・。 それにしてもハングルなんて全く話せないんだから人に聞こうにも聞けないし、親切な人が話しかけてきてくれても説明できない。仮に英語とか日本語を話せる人がいても、「雀荘」というキーワードだけでこの雑居ビル群の中の場所を知ってる人がいるとは思えない・・・。 まあ、だいたいの位置は分かってるんだから、しらみつぶしに探してみよう。地図上の点の付近にあるビルを1階から順番に見ていく。そしたら案外サクッと見つかった。見えたよ、並んだ麻雀卓が!この韓国で!ドアがガラス張りで本当にヨカッタね^^ このXの文字の後ろにあるのが麻雀牌なのかな。 ドア越しに店内を覗き込むと奥の方で麻雀している人たちが見える。 全く話が通じず会話にならんかったらどうしようか・・・^^; なんて考えながらドアをノックすると一斉に俺に視線。ギャハハハまあそうだわな。 メンバーっぽい人が近づいてきたので、とりあえず英語から試してみる。 ダメっぽい・・・。どうやらJapaneseってことは理解してくれたみたいだけど。 店の入り口であーだこーだやってる内に梶本さんの名前を出してみた。「梶本さん知ってる?僕は梶本さんにこの場所を教えてもらって来てみたんだよ」みたいな。そしたら一気に道が開けました。奥から日本語を話せるノリマキさんという方が来てくれて、超助かりました、マジで><。 ノリマキさんにざっと用件を話すと、店内の人たちに事情を説明してくれて、少なくとも怪しい奴というレッテルは剥がれたと思われる。 韓国の麻雀のこととかを聞いて、一通り店内の写真を撮らせてもらって満足したところで時間も10時くらいになっていたので帰ろうと思っていると、ノリマキさんから「せっかく来たんだから1回打とうよ」との声が。マジっすか!? ルールが全く違ったりするのでは?と心配だったんだけど、説明を聞くと何と日本の典型的なフリー雀荘と大体おんなじでした。 大きく違ってるのは、赤ドラがないこと、オカがないこと(3万点持ち3万点返し)くらいです。それからノーレートです(当然、祝儀もないです)。 同卓者にハングルで数字も話せないから点数はとりあえず日本語で申告させてねと断ってから半荘1回打たせてもらいました。ノリマキさん、鉄強と紹介されたメンバーさん、韓国美女さん、そして俺です。結果はノリマキさんにトップを捲くられ、俺は42100点持ちの2着。Rubixでは着順管理しているらしく、この雀荘の成績データに俺の名前入りました^^ 発声のたぐいは日本と同じなのでやり易かったです。あと牌さばきや打牌スピードを見ても、決して日本人に見劣りするものではないです。かなりやり込んでる印象を受けました。 まさか韓国で麻雀打てると思ってなかったので、良い思い出になりましたー^^ ソウルに行く機会あったら一度立ち寄ってみるといいよ。 ホームページはこちら→http://cafe.naver.com/majak (注:全部ハングルですw) Rubix: ソウル地下鉄2号線新川駅4番出口から徒歩3分くらい あれ?今気づいたけど俺ゲーム代払ってねーわww ゴメンナサイ! #
by doraaka
| 2010-10-21 03:04
| 日々雑感
天鳳成績管理ツールをアップデートした。変更点は以下の2箇所です。エラー報告をくれた方々THXです。平日はあまり時間がとれずにすぐに対応できなくてゴメンナサイ。
(1) 1月末以降、祝儀モードのテストデータの牌譜が存在する場合 mjlogの卓種別表記にGO Type=769というものが出現していて、僕のアルゴリズムでは判別できなくてエラーを吐いていた。idaten!さんに聞いたところ、16進表記で0x0301、般4東喰赤+αとかで、+αってのが、どうやらテスト中の祝儀モードらしい。 とりあえず現状、テストモードはpt変動がないので、祝儀モードの牌譜を除外することにした。 (2) 2月以降、牌譜データの書式変更 kmo2さんのブログに記事があった。 AGARIタグのowari属性の値が整数値から小数点第1位まで書かれるように変わっていた。えっ?なんでわざわざ?麻雀の点棒って100点が最小単位じゃなかったっけ? で、これも読めるようにした。 #
by doraaka
| 2010-03-08 00:59
| 天鳳
ツールの大幅な仕様変更に伴って最新版をUPしました。ダウンロードはこちらです。
牌譜ログファイル(*.mjlog)を直接読み込む仕様に変更したため、本バージョンから牌譜解析スクリプトからテキストファイルを出力する事前準備が不要となりました。設定画面でMy Tenhouフォルダを指定するだけです。 また、これに伴って追加した機能がありますので簡単に触れておきます。 従来のデータ表示方法はメニューバーから[ファイル]→[ロード](またはCtrl+L)だけでしたが、もう1つ[ファイル]→[設定を反映](またはCtrl+R)という項目が追加してあります。 [ロード](またはCtrl+L)は、mjlogファイルからデータを読み込んで表示するのに対して、[設定を反映](またはCtrl+R)は、[ユーザ設定]等で表示オプションを変更した場合に既に読み込んであるデータを再表示します。mjlogデータの読み込みには打数の増加に伴って時間がかかりますので、全く同じデータの再読み込みによるロスを軽減するための機能です。 とは言っても、現状はベータ版ですので、バグや要望等ありましたら連絡お願いします(^^;)。 あと例によって、僕は三麻データを持っていないので、未だ三麻データでの動作確認が終わっていません。三麻データをお持ちの方の報告もお待ちしています(^^;) 最後に、牌譜ログファイル(*.mjlog)の読み込み部分に関しては、長村ビッグ氏の協力・助言をいただきました。この場を借りてお礼申し上げます。おさむくんありがとう(^^)/ #
by doraaka
| 2009-04-13 08:45
| 天鳳
前回、mjlogから対戦日時を読み込む限界について記事を書いたんだけど、天鳳牌譜解析スクリプトでのmjlogから対戦順の評価方法が分かったので、忘れないうちにメモを残しておきます。
牌譜解析スクリプトで「順位遷移」や「Rateグラフ」のような対戦順にデータをソートする必要のある場面で使っているJavaScriptのソース(log_jun.jsまたはlog_rate.js)を開くと、以下のようなスクリプトが見つかります。 //---------------------------------- // ANALYZER PARAM //---------------------------------- //var sSortAs"CTimeAscent"|"CTimeDescent" //※ ソートはOnEnumLogとOnLogBeginの間で行なう //---------------------------------- var sortAs="CTimeAscent"; // ファイル作成時間の古いものから //var sortAs="CTimeDescent"; // ファイル作成時間の新しいものから(default) なるほど、ファイル作成時間の古いものから順にソートして、それを対戦順としているようです。やはり現状ではmjlogファイルはタイムスタンプの情報に頼っているのか。 PCを変えたり、バックアップでファイルをコピーしちゃったりしたらどーすんだよ(^^;)。タイムスタンプ変わっちゃうじゃん。 でも、これで1つ注意しなくちゃいけない重要なことが分かりました。mjlogファイルをコピーしたり、もしくは再度ダウンロードするなど、タイムスタンプを変えてしまうようなことは絶対にしないってコトです(^^;)。少なくとも牌譜解析スクリプト上では対戦順が変わってしまうみたいだからね。 ちなみに今作っているmjlogを読み込む成績管理ツールはタイムスタンプとmjlogファイルのファイル名の両方でソートする仕様にしようと思っているので、万一タイムスタンプが変わってしまったmjlogファイルを使っていたとしても、少なくとも対戦の時間単位までの精度で表示されます。 #
by doraaka
| 2009-04-11 16:39
| 天鳳
|
その他のジャンル
Twitter
記事ランキング
画像一覧
| ||||||||||||||||||||||||||||||||||||||||||||||||
ファン申請 |
||