※麻雀ロジック研究会※

11NGNG
麻雀のロジックについて研究しませんか?

麻雀ゲームなんかで強いCPUキャラクターとやると
どうしてもプログラムの方で積み込んでいるとしか思えません。
人間の思考に近づくロジックを話し合いませんか?

127名前は開発中のものです。2007/02/13(火) 06:51:43ID:gYGMMXlO
>>126
あれ、今見てみたらちゃんと分離されてますね、何勘違いしたんだろw
とりあえず入試が終わるまで全然手つけられなさそうな今日この頃ですorz
明日入試なんだけど受かる気しないやorz

128名前は開発中のものです。2007/03/25(日) 17:39:09ID:/+ddsj91
おまいら最強の麻雀プログラムしてみろよ
http://pc11.2ch.net/test/read.cgi/tech/1169642436/

129名前は開発中のものです。2007/03/25(日) 18:32:15ID:UqHs+UFp
見にいったけどひどくレベルが低くないか?
テンパイチェックすら組めなそうな人ばっかりに見える

130名前は開発中のものです。2007/03/27(火) 18:23:15ID:AcanRDec
>>94
「MJSim」の最新版って有る?

131名前は開発中のものです。2007/06/17(日) 16:57:24ID:rBhd2fbQ
>>117のソース、興味ある。
誰か上げてくれないか。

132名前は開発中のものです。2007/08/10(金) 22:29:37ID:/4P+OHAU
aaa

133リンク2007/09/30(日) 19:03:23ID:IMLVX+zL

なぜ最近の犬学生は麻雀できない奴が多いの?
http://ex23.2ch.net/test/read.cgi/campus/1191128147/l10

★★★ 学校で麻雀を教えるべきだ ♪♪♪
http://school7.2ch.net/test/read.cgi/edu/1190440186/l10

なんで最近の若者は麻雀できない奴が多いの?
http://money6.2ch.net/test/read.cgi/mj/1159088315/l10

134名前は開発中のものです。2007/10/04(木) 21:01:57ID:HFnYJuJ5
せのたんは仮性包茎だったけど太めで包皮の上からカリが分かるプックリ型で良チンだったよ

135名前は開発中のものです。2008/04/18(金) 23:45:53ID:ZXDlZmWL
まだこのスレがあったwww

136名前は開発中のものです。2008/04/27(日) 15:51:10ID:7kUIsgPs
おまいら最強の麻雀プログラムしてみろよ Part2
http://pc11.2ch.net/test/read.cgi/tech/1185540470/

137名前は開発中のものです。2008/07/27(日) 01:30:55ID:FAVGJPP8
あげ

138名前は開発中のものです。2008/07/29(火) 00:08:41ID:z7Yquf9f
さげ

139名前は開発中のものです。2008/10/19(日) 00:59:04ID:7mqKFfWk
オープンネットワーク麻雀
http://sourceforge.jp/projects/openmj/wiki/FrontPage

140名前は開発中のものです。2009/02/25(水) 01:01:10ID:B3OIG4R1
純粋に役判定だけしてくれるライブラリって無いですかね。

141名前は開発中のものです。2009/02/25(水) 15:38:50ID:O2MoAZ4b
>>140
作ってうp

142名前は開発中のものです。2009/03/12(木) 21:59:56ID:zQ85wj82
作った

143名前は開発中のものです。2009/03/31(火) 11:17:50ID:8CzZ1Tdw
>>139
面白そうなことしてますね、HP見たけどどこまで進んでるか不明だった。
麻雀AI持ってるから、その上で動くAI作ってもいいけど。
いつ頃そのようなことができる?
ただし、C++のみRubyは覚える気ないのよ〜〜、 Winにも入れる気がなかったりして・・・

144名前は開発中のものです。2009/08/18(火) 20:45:23ID:O344lzLj
あげてみる

145名前は開発中のものです。2010/07/04(日) 10:22:21ID:5u/6soF2
天鳳shirou_0のタメツモタメロン逆切れ粘着ストーカー最強

146名前は開発中のものです。2010/07/04(日) 18:40:43ID:StqxSj8Y
まだやってんのかこのスレ(w

真面目にロジック組もうとすると、
すぐ組合せ的爆発を起こすんだよな。
最近はリソースが豊富なだけに、
落ちるまでが長いからけっこう始末が悪い。

しかも定跡らしき手法がないんだコレが。
ジン・ラミーなんか麻雀よりだいぶ簡略化されてるが、
SE研修で「ジン・ラミーの上がり判定」を課題にしたら、
けっこう高給取りのはずの中級SEが二人掛りで二日かかっても
論理設計すらできずにギブアップした(w

プロダクション・システムを適当にでっち上げて
学習で鍛えるのがまだしも現実的だが、
所ジョージが言うように
『麻雀の必勝法は 素早いチョンボである
人が見てないうちに 勝手に自模っちゃう』
が結局いちばん効果的だと思う。

147名前は開発中のものです。2010/07/04(日) 18:50:13ID:MFQ3orwH
サマをするAIとか、AIの意味ねえから…w

148名前は開発中のものです。2010/07/04(日) 22:29:50ID:StqxSj8Y
>>147
いいこと言った(w
だけど、AIって基本「相手が誰か分からない」っつー
前提があるじゃん?
相手の癖とか考慮できないわけだし、
コンビ打ちとかされたら、
不完全記憶ゲームだから解がない可能性だってあるわけだ。
AIで特定の条件で有効なシステムが組めたとして、
それって本当に意味あんのか?っつー話になんねぇ?

149名前は開発中のものです。2010/07/05(月) 03:40:35ID:hJG4Gafv
>>148
そういう人間っぽい戦略をするAIはある意味夢だよねw
でも、無作為な相手を対象としたAIでも価値はあると思う。

もし無作為な相手を対象として、平均的に強いAIが組めたら、
それより強いAIを組むために使えるじゃないかw

150名前は開発中のものです。2010/07/05(月) 20:46:50ID:KmfV60ed
>>149
> そういう人間っぽい戦略をするAIはある意味夢だよねw
待て待て。まず、
・プレイヤーの個人認証をする(過去の対戦記録から
対策を練ってくる)。
・戦略に名前とキャラを与える(プレイヤー側のハンデに
ならないように、条件を同じにする)。
つーところから始めたらどうだろう。

151名前は開発中のものです。2010/07/06(火) 00:53:05ID:Y3oGudsH
一人のAIをこのスレの住人でフルボッコにするシステムを作って、
住人の打ち筋から学習するわけですな。

でも、まず戦略上の有意で重要なパラメータが何かが分からないと思うんだ。
ベタ降り 早上がり 大物狙い
ぐらい大雑把なのは思いつくけどさ。

152名前は開発中のものです。2010/07/06(火) 06:23:43ID:kxHaNFod
ジン・ラミーは
・半端なカードがあっても合計十点以下なら上がれる
・逆ノックというルールがある
とかでゲーム性を高めているんだが、
麻雀では
・手が揃わないと上がれない
・とにかく他の奴より早く、あるいは同時に上がらないと点にならない
の二点をめぐる攻防がキモになってくる。
そこから、
・基本は早上がり
・早すぎても安かったらおいしくないので、
どこまで待ってどこまで点数を上げるかが重要
・誰かが牌を抱えてたり底に沈んでたりするとダメだから
待ちを拡げるかどうかも配慮する必要があるし、
相手の手を読むことも考えたほうがいい(ヒッカケも
この一種)。
・役に対する好みは確率にも相性にもかかわってくるので、
どう利いてくるか今のところ不明
あたりを念頭に大雑把に組んでみりゃ
プロトとしてはよさそうに思う。

153名前は開発中のものです。2010/08/11(水) 16:30:46ID:NAUDnXxM
上げる

154名前は開発中のものです。2010/09/15(水) 23:47:50ID:aG+O5gjD
おまいら最強の麻雀プログラムしてみろよ Part3
http://hibari.2ch.net/test/read.cgi/tech/1239684329/

155名前は開発中のものです。2010/10/17(日) 01:57:31ID:2TPZ9K5W
麻雀プログラムWiki
http://www26.atwiki.jp/mjpro/

麻雀シミュレータ MJSim
http://www26.atwiki.jp/mjpro?cmd=upload&act=open&pageid=14&file=MJsim.zip

156名前は開発中のものです。2011/01/22(土) 01:12:24ID:oi0iQAjA
ここまで反応なしw

157名前は開発中のものです。2011/02/09(水) 15:27:36ID:516SVfzt

158名前は開発中のものです。2011/06/12(日) 08:11:26.10ID:PMFpryTR
>>146

>SE研修で「ジン・ラミーの上がり判定」を課題にしたら、
>けっこう高給取りのはずの中級SEが二人掛りで二日かかっても
>論理設計すらできずにギブアップした(w

それSEの能力が足りないだけじゃん

159名前は開発中のものです。2011/06/13(月) 02:53:05.59ID:IP0E3i88
できるだけ、自然に見えるようにイカサマする。

レベルによって1〜5個ほど島からツモり、必要な牌を1つとり、もどす。

160名前は開発中のものです。2011/06/20(月) 18:56:03.38ID:zP5I0UGQ
最も必要な牌がわかるならイカサマ無しでも強いと思う

161名前は開発中のものです。2011/06/21(火) 13:22:13.75ID:ET4j6FRl
たしかにw

162名前は開発中のものです。2011/06/21(火) 21:29:32.36ID:YX7p+Rwp
最も必要な牌が分からなくても、必要な牌は分かるよね。
シャンテン数が上がるか否かの判定だけでも十分。
点数の期待値とか一切考えず、シャンテン数が上がればその中からランダムで決めるって操作だけでも、
>>159のイカサマをされれば十分きつい。
上がってしまえば、相手がどんなに高めを狙おうと関係ないし。

163名前は開発中のものです。2011/07/03(日) 17:02:58.19ID:39f+tRWY
そのイカサマが何の役に立つの?

164名前は開発中のものです。2011/07/03(日) 22:04:24.89ID:qY4R3eSD
んなもの知らんよ。
最も必要な牌が分かるならイカサマ無しでも強いって言ってたから、
イカサマするのに最も必要な牌が分かる必要はないと反論しただけ。

165名前は開発中のものです。2011/07/05(火) 00:56:37.41ID:+NpHHO4E
シャンテン数判断を組み込めるってのが十分高いハードルだからなー
イカサマいらなくなるでしょ

166名前は開発中のものです。2011/07/05(火) 23:21:47.38ID:PC/+TWgq
>シャンテン数判断を組み込めるってのが十分高いハードルだからなー
お前にとってシャンテン数の判定が高いハードルなら、麻雀ロジックを考える上で何なら出来るんだよ…。
自分で作れなかったとしても、シャンテン数判定プログラムなんてググればソース付きで見つかるだろ。

167名前は開発中のものです。2011/07/27(水) 21:47:51.55ID:gNsRmOz6
上がり判定アルゴリズムが正しく作れるなら
普通シャンテン数判定も出来るわなぁ

168名前は開発中のものです。2011/07/28(木) 10:09:07.44ID:2bUtDyJG
それは別だと思うが

169名前は開発中のものです。2012/07/18(水) 00:41:15.42ID:gqYFb15W

170名前は開発中のものです。2013/01/20(日) 15:45:30.96ID:x/ZxDQc7

171名前は開発中のものです。2013/09/16(月) 10:12:11.07ID:VxCxAcyw
役判定の高速化法でこいいよ。。
これとモンテカルロ法を組み合わせたら強いと思う。
役が揃ってない13枚に対し、ランダムに牌を追加していき役が揃った時に、元の牌に得点づけする。
これを繰り返すと、役が揃いやすい(=和了型に残りのやすい)牌が求まる。
14枚の和了型を基本に、包含で大小関係をいれれば、15枚以上のとき和了型を含むかわかるだろう。





麻雀 和了判定(役の判定)アルゴリズム  連続した牌の数をインデックスにする方法
http://hp.vector.co.jp/authors/VA046927/mjscore/mjalgorism.html

172名前は開発中のものです。2014/10/04(土) 09:44:54.36ID:bkEdK/cy
age

173名前は開発中のものです。2014/10/04(土) 14:12:30.47ID:csngvuvA
0.優劣判定の準備
param[][14]を用意

1.今のシャンテン数、アガリチェック
tehai[14]に対して、シャンテン数計算。
-1ならアガリ役チェックに移る。

2.打牌毎のシャンテン数チェック
ある牌を切ったtehai[13](14通り)それぞれに対して、シャンテン数計算。
基本的には1のシャンテン数から変化しない打牌が正着。
1のシャンテン数との差をparamに保存。
マイナスならシャンテン戻しになる打牌。

3.受け入れ、有効牌チェック
さらに、34通りの牌をツモった時を想定したtehai[14]それぞれに対して、シャンテン数を計算。
シャンテン数が減る牌種がいわゆる有効牌。
有効牌の種類数をparamに保存。
また、実際の数を数え上げ、paramに保存。

また、シャンテン数が-1の時(受け入れ=待ちの時)、
そのアガリ翻数(MAX)を計算し、paramに保存。
さらに、アガリ翻数*枚数を足し合わせ、paramに保存。

4.安全度
完全安全牌>ノーチャンスアンコ牌>…
それぞれ該当するなら1,該当しないなら0を入れて、paramに次々に保存。

5.総合判断
できたparam行列に対して、係数により重み付けを行う。
シャンテン数は最重要なので20倍、など。順目やリーチ者の数が増えていくと安全度の重みが増し、
危険な場面ではシャンテン数の重要度を超えるようにする。

1741732014/10/04(土) 14:13:38.26ID:csngvuvA
ポイントは、オリの局面で安全度で同点首位の2択になったような場合、
自然と手牌をぐちゃぐちゃにしない打牌が選ばれるところ。

2件リーチ
456mの5mと6mが完全安牌で100ポイント
受け入れポイント的に微差で6mが高得点


パラメータの調整にあたって、今後、機械学習を導入する方針。
少しずつパラメータを変えたAI同士を戦わせて、成績が良いほうを残していく方法を考案中。


何かご意見あればお願いします。

175名前は開発中のものです。2014/10/11(土) 20:29:14.49ID:YpszWTxL
捨て牌選択時の役判定はかなり重要
特に鳴いた後
混一色一択で鳴いたのに形テン狙いのまま字牌を切りまくるクソAIとかw
あるいは手が確定できる鳴きしかやらないというのもゲーム的にはアリだけど

終盤になると有効牌の残り枚数も無視できない

もひとつ、振りテンチェックも地味に効く…見逃ししないならそれほどでもないか

176名前は開発中のものです。2016/07/05(火) 17:36:13.32ID:k6tcQJSy
「おはようふじもん」

https://twitter.com/fujimon_marlife

177名前は開発中のものです。2017/12/31(日) 22:44:16.98ID:/rN76OKL
簡単にお金が稼げる方法興味ある人だけ見てください。

グーグル検索⇒『来島のモノノリウエ』

R664ZOAJOL

新着レスの表示
レスを投稿する