• 検索結果がありません。

112 麻雀の役判定と点数計算

N/A
N/A
Protected

Academic year: 2021

シェア "112 麻雀の役判定と点数計算"

Copied!
1
0
0

読み込み中.... (全文を見る)

全文

(1)

112 麻雀の役判定と点数計算

情報論理工学研究室 野中 章宏

1 . 序論

コンピュータ麻雀は、コンピュータ囲碁やコンピュータ 将棋に比べて研究が進んでいない。コンピュータ囲碁やコ ンピュータ将棋はレベルを競う大会があるのに対して、コ ンピュータ麻雀はまだまだ個人が趣味で研究しているとい うレベルにとどまっている。これは囲碁や将棋が「二人零 和有限確定完全情報ゲーム」であるのに対して、麻雀は「不 完全情報ゲーム」であるため、最適な戦略を得ることが難 しいためである。一方、麻雀は確率統計等の数学的な研究 に用いられることも多い。

ネット上で多数の人が利用する「天鳳」や「MJ」等のコン ピュータ麻雀をつくる時に必ずコンピュータにさせなけれ ばならないのがアガリ判定と役判定と点数計算である。本 研究ではコンピュータ麻雀の基本ともいえるアガリ判定と 役判定と点数計算を行うアプリケーションを作成した。ま た、ローカル役と呼ばれる地域限定のアガリ役を判定でき る機能も追加した。

2 . 研究内容

本研究では麻雀のアガリを判定し、様々な役を判定し、点 数を自動で計算するアプリケーションを制作した。麻雀の 役を判定し、点数を計算するアプリケーションは現時点で 多数存在する。一方、麻雀には、日本プロ麻雀連盟が正式 ルールで導入しているアガリ役以外にも、ローカル役と呼 ばれる一部地域で限定的に使用されている非公式の役も多 くある。そこで本研究では、一般の役に加えてローカル役 の判定も行うアプリケーションを制作した。

麻雀アプリケーションプログラムを制作するために本研 究ではJava言語を用いた。本研究で制作した麻雀アプリ ケーションプログラムは7つのクラスから成る。

Inputクラス 

キーボードからマンズ、ピンズ、ソーズ、字牌の順で入 力をさせ、牌の数が正しくないときはもう一度再入力 させる。0が入力されたときはその種類の牌の処理を とばす。

Sortクラス 

キーボードから入力された4種類の牌をそれぞれ小さ い順で並び替え、後のアガリ判定や役の判定をしやす くする。

Yakuクラス 

様々な役とローカル役の判定を行う。

Calculateクラス  翻数から点数を計算する。

Addクラス 

リーチとダブルリーチの有無、鳴きの有無、自風と場 風、ドラの数、アガリ方、待ちの種類、海底撈月と河底 撈魚の有無、一発の有無、嶺上開花と槍槓の有無をキー ボードから入力させる。

Mahjongクラス 

シュンツとコーツの判断、仮の頭の設定、アガリ形の作 成、国士無双とチートイツの確認等を行う。

3 . 実行結果

図1に本研究で作成した麻雀アプリケーションの実行結 果を示す。図1 より、ホンイツと一気通貫の複合をはじめ とした様々な複雑な役の複合の判定が上手くいっているこ とが示される。また、親の場合と子の場合の両方で点数計 算が正確にできていることも示される。

図1 実行結果

4 . 結論

本研究では、麻雀の役判定および点数計算を行うアプリ ケーションを作成した。本研究で作成した麻雀アプリケー ションは、麻雀の全ての役と、ローカル役の判定を正しく行 うことができ、また、複合出来る役と出来ない役の判断や、

実戦で使えるレベルの点数計算も出来る。

今後の課題としては、待ち牌の解析や符計算に対応した アプリケーションや、きちんとゲームができる麻雀AIをつ くることが挙げられる。

参考文献

1) 石畑恭平:コンピュータ麻雀のアルゴリズム, 工学社 (2007)

参照

関連したドキュメント

近年は人がサルを追い払うこと は少なく、次第に個体数が増える と同時に、分裂によって群れの数

今年度は、一般競技部門(フリー部門)とジュニア部門に加え、最先端コンピュータ技術へのチ ャレンジを促進するため、新たに AI

と判示している︒更に︑最後に︑﹁本件が同法の範囲内にないとすれば︑

られる。デブリ粒子径に係る係数は,ベースケースでは MAAP 推奨範囲( ~ )の うちおよそ中間となる

まず、本校のコンピュータの設置状況からお話します。本校は生徒がクラスにつき20人ほど ですが、クラス全員が