デュプリケート麻雀実現の問題点
麻雀はやたら運に左右されるため実力を比較するためにはどうしても大量にゲームを行う必要があります。この問題を解決するために、ブリッジの大会などでつかわれている同一の手札で競技することで運の要素を軽減するデュプリケートルールを麻雀に採用できないか?という考えを持つ人は多いようです。
私もまったり麻雀にデュプリケート機能を実装することにより少ない試合数で実力を比較することができないだろうか考えたことがあります。
思うに、問題は3つあります。
1)鳴きによるツモのずれをどうするか
デュプリケートが良く採用されるブリッジの場合、運に左右される箇所は麻雀でいうところの配牌のみでツモがないのですが、麻雀にはツモがあるという問題があります。ツモは鳴きによって簡単にずれてしまいます。厳密にデータとったわけではありませんが、感覚的に、配牌による運不運より、ツモによる運不運のほうが成績に与える影響が大きいように思えます。
そのため、単に、乱数のシードだけ指定可能にすればデュプリケートを麻雀で実現したとは言えないと思います。さらに、何らかの工夫が必要でしょう。
例えば、対策として、ツモがずれないようにルールを変更すると言う手はあります。
つまり、通常の麻雀のようにツモ山の開門位置から全員が時計回りに取るのではなくて、皆自分の前に積まれている山からツモをとるような感じにするということです。
このことで、ツモが鳴きによってずれが生じないようにすることはできるかと思います。
2)連荘による局のずれをどうするか
1)の問題はツモの方法を変えることで解決するとしても問題になるのが、この連荘の扱いです。
「なまじ親で連荘したばっかりに、次の1本場で倍満ツモられて親かぶり食らった。」などのケースをどのように扱うのか。ツモのように連荘しても少なくとも0本場のときの配牌とツモは固定とするように扱うのか等考えなければいけない問題があります。
対策として、ゲーム開始の段階で東1局から南4局までの0本場から10本場までの配牌とツモを固定してしまうのが良いのかなと考えています。
3)成績の評価をどうするか
さらに問題なのが、デュプリケートを実装したとしてどのように成績を比較するか?です。
皆が同一条件の乱数値で打った成績を比較するようなネットのサイトを設けるのがベストかと思うのですが、この手のサイトを作るとどうしてもズルをする人や、他者がズルをしてると勘違いして、処罰を管理人に求める人などが現れるでしょう。このようなサイトを開設すると、ネット上のケンカの仲裁役をやるハメになりそうで考えただけでうんざりします。
もうひとつ、そもそも根本的な問題として、デュプリケートを実装してネットの成績比較サイトを立ち上げたとして、本当に人が集まるだろうかという問題もあります。
私が最近ブログで投票アンケートをとっているのも実はどの程度人が集まりそうかを計測してみたい思いがありました。見てのとおりでして1クリックするだけのアンケートですが、100人程度しか集まりません。
まして、まったり麻雀で、ある程度(100試合以上?)打って成績を他者と比較してみたい人なんて本当に集まるのか疑問です。
対策としてはCOMと比較してみるという手が考えられるとは思います。
最初にプレイヤーが打った後、COMが同一条件で打ってみて成績を比較してみるという手はありそうです。ただこれを実装したとしてもCOMより強いかどうか程度しか結局判別できないのであまり意味が無いかもしれません。
* * *
単に乱数値のシードを指定してゲームを開始するだけだと単なる「たら・れば」機能にしかならないのではないかと思います。
これら3つの問題にもっと良い解決策があるのならデュプリケート麻雀は実装してみたい機能ではあります。何か良い案があればぜひ教えてください。
ごちゃごちゃ言ってないで、まずは簡単に実現できる単に乱数シード指定だけやってみて、その上でさらに改良案を提示してもらうという手もありかもしれませんか……
| 固定リンク
この記事へのコメントは終了しました。
コメント
丁寧に対応していただきありがとうございます。ぜひとも協力したく、まずは不正対策について論じてみます。
コントラクトブリッジでは、1試合が終わって、同じハンドを交代で渡すときに「自分のハンドについて、一切情報をもらさない」というルールが設けられています。大会会場に全員が同時にいることによって、不正がないことを、お互いが確認できます。
1. 放任
1つの方法は「管理人はトラブルを一切関知しない」と宣言するものです。完全にユーザの良識に任せ、ただ送られてきた結果のデータを掲載します。まじめに成績を比較したい人のみが集まるとすれば、有力な選択肢です。
この方法の問題点は、実際不正や不正疑惑(冤罪含む)が起こった場合「ユーザが」損をすることです。
2. 同時
同じ会場に参加者を集めるのは無理にしても、配牌・自摸のデータをストリーミング配信することができれば、参加者すべてが同時にプレイすることはある程度可能と考えられます。
この方法の問題点は、試合数を増やす時に、参加者の都合がつきづらくなることです。1日5試合程度と考えると、100試合だとすれば20回すべてに参加できる人が多くいることは考えづらいです。
次に、集客についてです。
麻雀における実力比較の高精度化を望む層は、けして「麻雀打ちの大半」ではありませんが、たとえば貴ブログや凸さんのサイトなどには、ある程度存在すると考えます。
一般に、手軽な手法ほど人気がありますから、集客のみを考えれば、試合数は少ない方がよいです。
ところで、デュプリケート麻雀の目的は、短期間で実力判定をすることです。しかし、実際どれほどの試合数が必要十分かは、全く分かっていません。これは、デュプリケート麻雀が今までに試されたことがない(山が同じ、だけは例があるらしいですが)からです。
以上より、実力比較の1方法として確立するには
(1) 試合数を、たとえば5試合とかにする
(2) ある試合数のデータを取ってみる
(3) 既知の実力序列と比較する
(4) 十分な相関が見られなければ、試合数を2倍して(2)へ
この方法を提示して、うしうし掲示板などで協力者を募ってみて、ある程度試合数のメドがついてから一般向けに、ということもできると思います。
最後に、連荘による局のずれについての意見を。
1. ある局を経験した者としていない者とが現れると、実力比較は困難になります。したがって、「なまじ親で連荘したばっかりに、次の1本場で倍満ツモられて親かぶり食ら」うなら「親が流れたが、次の局で親倍ツモられて8000払」うべきだと考えます。(この例は南家に倍満ツモられたことにしましたが、もちろん西家なら4000の出費です。)
よって、配牌と自摸の固定は、各局と各本場に対してではなく、東1局0本場から数えた局数に対して行う方がよいと思います。半荘の局数は、余裕を持って30局程度(3日ほど前に、21局を経験しました)でしょうか。
2. 試合数がある程度多いことを前提とすれば、さらに改善の余地があります。全ての試合を通算した局数で配牌と自摸を固定すれば、たとえば「「最初から、第1000局を含む半荘まで」の平均順位と素点を評価」とすることができます。順位(状況判断)に関してはその評価時期がプレイヤーによって変わってきますが、素点についてはほぼ平等になります。
3. 大胆ですが、連荘をなくしてしまうという方法も考えられます。一般に受け入れられるかどうかは分かりませんが、競技的なルールではありますし、中国麻将などにおいてはすでに行われています。
現行ルールの実力を評価するには、補正を加えることも考えられます。凸本(171p)には「親が連荘して迎える次局の得点期待値は+650である」とあります。したがって、親が連荘するような挙動をしたときに他3人から223点ずつ(簡単のため200点ずつでもよい)を得るようにすれば、補正ができます。
投稿: 我打麻将 | 2008/02/24 01:51
ここにはしばしば訪れますが、2ハン役の投票はしていません。
理由は好き嫌いがないから。
それぞれの特徴に合わせてその役を目指す(活用する)か否かを決めています。
タンヤオを複合可能か?鳴けるか?孤立したドラを使えるか?などスピードとハン数アップとの関係で考えています。
まったりは一応400試合を目途にゆっくりと楽しんでいます。まだ少々ですが。
投稿: モンテカルロ・モナコ | 2008/02/24 20:14
ちなみに、私の好きな2飜役は三色同刻ですw
投稿: 我打麻将 | 2008/02/24 23:09
あんまり乗り気でないなら、やる必要ないと思います。
ちなみに、デュプリケートに多少興味を持ったのは、裁量型の新アルゴリズム同士の比較で4千試合をベースにしても0.04も平均順位に差が出たことを知り、あらためて運の要素の強さを確認したからです。
つまり、東風荘のレート(凸スコアも含む)や天鳳のランキング(上位者は記録を残してその後ゲームをやらず)などの指標の有効性に少し疑問を感じたからで、何か他にも指標があればと思ったからです。
仮に検討の余地ありなら、ツモのズレや連荘での修正など無視してよいと思います。
鳴きの判断で優劣は出るでしょうし、個人的にはクソ連荘(15や29)を時々避けたりしていますから。
また、成績比較に関しては、ランキング欄などいっさい公表する必要などないでしょう。
クレームに対しても一切無視(クレームは根本的に受け付けないと明示)。
要は評価の仕方を明示し、トライした人だけが評価を受け取るような形でよいと思います。
いずれにしても、本来の「まったり」の強化が優先であろうと思いますので、さっさとわが道を進まれた方がよいと存じます。
投稿: モンテカルロ・モナコ | 2008/02/27 00:34
やりたくないわけではないです。むしろやりたいと思ってます。mixiにもその旨過去に書いてますしここにもそれらしき記述をしてます。
それと、作業の優先度は私が決めます。
投稿: kmo2 | 2008/02/27 02:15
すみません。差し出がましいことを申し上げて。
外野の勝手な横暴をお許し下さい。
投稿: モンテカルロ・モナコ | 2008/02/27 02:43
かっとなってすいません。
とりあえず、デュプリケートは、以下の仕様で作ることにします。
メニューの「ゲーム」=>「デュプリケート対局」を選択すると
ゲーム開始前にダイアログを表示
以下の選択を選べるようにする。
乱数のシードを指定
ツモずれ抑制モードと通常モードを選択可
連荘も通常モードと連荘なしモードを選択可
牌譜記録を選択(通常対局と区別するためワイワイ卓として記録)
対局後同一シードでCOMが打って牌譜に記録し比較できるようにする。
ネットの比較サイトは最初は、取りえず無し。公開後のコメントしだいで決める。
投稿: kmo2 | 2008/02/29 00:12
僕も、うしうし掲示板でデュプリ麻雀に興味持ちましたw
ログ見ると、どうやら作ってもらえるようでありがとうございますw
出来上がった際には、知り合いにも薦めてみようと思いますw
プログラム関係はともかく、雀キチの知り合いはたくさんいるので、
集客面は手伝えそうです。では、頑張ってくださいね~!
投稿: ひむろ | 2008/03/01 23:58
デュプリケート機能は比較的優先度高めで作業します。ただ、私は結構のろまなのでもう少しまってください。
投稿: kmo2 | 2008/03/03 20:00