[過去ログ] ※麻雀ロジック研究会※ (177レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1
(11): 1 [麻雀ってまぁまぁじゃん] 2010/05/01(土)13:48 AAS
麻雀のロジックについて研究しませんか?

麻雀ゲームなんかで強いCPUキャラクターとやると
どうしてもプログラムの方で積み込んでいるとしか思えません。
人間の思考に近づくロジックを話し合いませんか?
97
(1): 2006/11/11(土)11:45 ID:z2w53djY(1) AAS
ベタオリ機能外した方がよくねえか?
98: 96 2006/11/11(土)14:19 ID:bfMsKF2A(2/2) AAS
>>97
そうかなあ。
ベタオリ機能を実装してから、成績がだいぶ安定したから
必須機能だと思ってたけど・・・
99: 2006/11/11(土)20:49 ID:GfQHFT1U(1) AAS
ベタオリする条件を先制リーチと別に、もういくつか設定してみたらどう?

たとえば残り山数が少なく、シャンテン数が高いとか
切れる牌が危険牌だらけとか上がれそうもなかったら、ベタオリ。

まだ、山数が十分あるとか、シャンテン数が低いとか、切れる牌の危険度が
低かったら続行するとか。
100
(1): 96 2006/11/13(月)09:22 ID:duDFKbMP(1) AAS
>>96からさらに100試合ほど打たせてみた。
すると、その100試合の安定Rが1650で、
>>96の100試合と合わせた計200試合の安定Rが1450に。

まだまだ試合数が少ないから断言はできないけど、
今までは運が悪すぎたのかなあ。

とりあえずは旧上ランの入り口である、R1600を目指して
がんばります(`・ω・´)
101: 2006/11/13(月)19:32 ID:/l9lVeym(1) AAS
勝ちが安定しないって、ようは運任せで、アルゴリズム関係なしなんでは?
102: 2006/11/13(月)23:38 ID:BdVR9VSj(1) AAS
シャンテン数が高いときはベタオリにして、
それ以外のときは
ゆるくオリるような打ち方がいいんではないかと。

つまり、現物、字牌、筋、
リーチ者が序盤に切った牌の周りなどを
安全そうな牌としといて、
安全そうな牌かつシャンテン数を落とさない牌を打つようにする。
省1
103: 2006/11/14(火)19:32 ID:MANy7Ws5(1) AAS
やっぱりベタオリは改善の余地があると思う。
勝ってるときはベタオリ、負けてるときは、続行とか。

あとは鳴きが役牌のみってところかな?
チンイツとかホンイツとかトイトイとか、いくつかの役に対して、シャンテン数計算して、
いくつ以下ならその手を目指してチーポンを積極的に行うとかはどうだろうか。
104
(2): 96 2006/11/19(日)22:34 ID:t1T5Qf2N(1) AA×

105: 2006/11/20(月)03:34 ID:flZCi+aK(1) AAS
>>104
興味あり。公開してほしいな。

まあ、俺は代打プログラムを作れるような頭は持ち合わせていないが。
106: 2006/11/20(月)21:10 ID:8qCQQBvr(1) AAS
うちは、代打ちじゃなくて全部オリジナルで作ってるんで、
プログラム自体は必要ないけど、アルゴリズムとか、
どんなことをやってるかソース中にコメントとかあれば見てみたい。

作ってるのはエロゲなんで、強い思考ルーチンはいらないんだけど。
107: [age] 2006/11/24(金)22:26 ID:WoA2EPYX(1) AAS
しかし、こんなにいるんや。
こんなこと考える人!

やっぱ、パラメタ、重みつけ。
あと、ひたすら統計になるんかなー?
108: 2006/12/12(火)23:21 ID:svbHb3hn(1) AAS
統計取るなら聴牌思考の指向性についても考えたほうがいいんじゃないかな
具体的には棒聴即リールーチンと期待値計算して遠回りしても高い手を和了るルーチンのどちらが強いか
ってのを東風かなにかで実戦に投入しながら統計をとるってことで

でも、麻雀の統計として具体的に何局ほどサンプルをとればいいんだろうか…
20万局ぐらい?
109
(1): 96 2006/12/28(木)20:24 ID:IWNuZXZH(1) AA×
>>100

110: 2006/12/29(金)18:27 ID:sGXeTFgC(1) AAS
カルネージハート(或いは、FF12のカンビット)のように
みんながアルゴリズムを組みやすいアプリケーションがあればいいと思った。
麻雀がうまくてもプログラムなんて組めないって人多いだろうし。
111: 2006/12/29(金)18:38 ID:J1Q+yA/u(1) AAS
麻雀は、カルネージと違って、サブサンプション的にどうこうするってものでないからな
アルゴリズムというよりむしろ統計処理か

まあ、パネルプログラミング的なインターフェイスはあったら面白いかも
112
(1): 2006/12/29(金)19:27 ID:XZsMB63t(1/2) AAS
>>109
研究用にソース欲しいんですけどオープンソースですか?
113
(1): 96 2006/12/29(金)21:53 ID:DWfKfu8r(1/2) AAS
>>112
僕のしょぼいソースでよければ公開させて頂きますよ。
言語はCです。
ただ、あくまで東風代打ツールとして作ってるんで、
研究用には使えないかと思います。

>>104で書いたんですけど、反応が薄かったんで、放置してました(笑)
114: 2006/12/29(金)22:12 ID:XZsMB63t(2/2) AAS
>>113
ありがとうございます。
リアルでも使える代打ちプログラムを作りたいと思ってるので助かります。
115
(1): 96 2006/12/29(金)22:17 ID:DWfKfu8r(2/2) AAS
>>115
いろいろ改良を重ねているうちに、ソースが汚くなってきたので、
ちょっと整理に時間がかかるかと思います。
明日の夜には間に合うと思いますので、
申し訳ありませんが、それまでお待ちください。
116: 高島易者のつぶやき [暴力団の資金源] 2006/12/30(土)02:07 ID:6keB+Ie9(1) AAS
そんなことより、ちょいと聞いてくれよ、>>1よ。
昨日、あるホテルで高島易断の鑑定会やったんです。鑑定会。
そしたらなんか人がめちゃくちゃ少なくガラガラなんです。
で、よく見たらなんか貧乏臭い客がいて、「運勢鑑定3000円ですよね」、とかほざいてるんです。
もうね、アホかと。馬鹿かと。
お前らな、運勢鑑定如きで普段来てない高島易断に来てんじゃねーよ、ボケが。
御祈祷だよ、御祈祷。
省22
117
(2): 96 2006/12/31(日)06:46 ID:57FmFyf5(1/2) AAS
風邪のため作業が捗らず、遅くなりましたが、
東風荘代打プログラムのソースコードです。

外部リンク[html]:kasamatu.o0o0.jp
受信パス:hebo_vip
解凍パス:hebohebo_vip
118: 2006/12/31(日)07:27 ID:kaT/o5X3(1) AAS
ありがとうございます ノ
119: 96 2006/12/31(日)14:39 ID:57FmFyf5(2/2) AAS
すいません、バグがあったので、修正をお願いします。
strategy.cppの176行目、SelectDiscardTile_SevenPairsOriented関数の
最初の変数宣言部で、max_effective_tile_number = DBL_MAX; と
なっているところを、  max_effective_tile_number = DBL_MIN; に修正して下さい。

なお、本プログラムの成績は下図をご参照下さい。
画像リンク[jpg]:kasamatusan.sakura.ne.jp
120: 2006/12/31(日)17:59 ID:JPe3tcsE(1) AAS

121
(1): 96 2007/01/07(日)01:59 ID:GOuBSiwa(1/2) AAS
全然反応がないです・・・(´;ω;`)ブワッ
122: 2007/01/07(日)07:49 ID:cR1YsYdq(1/2) AAS
>>121
難しい分野だから仕方ないね。
俺も面白そうと思ってやろうとしたけど、すぐに(数学的な?)壁にあたってしまった。
面白そうではあるけど、敷居が高いねえ。
123
(2): 96 2007/01/07(日)08:39 ID:GOuBSiwa(2/2) AAS
>>123
現時点の僕のプログラムは安定Rが1600程度ですが、
まだ高校数学以上の数学は一切用いてないです。
数学よりも、バックトラッキングや再帰関数といった
プログラミングの知識の方がはるかに重要じゃないかと思います。
もちろん、強いプログラムにしていく過程で数学の壁にあたることに
なるとは思いますが、ひとまず動かしてみて、思考ルーチン部分の
省6
124
(1): 2007/01/07(日)12:44 ID:cR1YsYdq(2/2) AAS
>>123
高校数学すらおぼつかないので・・・
また、うぷしてもらったソースを理解して改造していくのは難しそうだし、悪いけどそれはあまり楽しそうでない。
まずは、もっと単純なところから、
例えば、1人麻雀でテンパイに向かうだけのプログラムとかからはじめようかと思う。

車輪の再発明って言われるかもしれないが、この場合はプログラミング自体が「遊び」なので。
みんながスーパーマリオの1面をプレイするように、みんなが通っていいかなと。
省1
125
(1): 2007/01/18(木)22:19 ID:JqheaSzi(1) AAS
今日初めてここ着たけど、とりあえずソース読ませてもらったよー
別の麻雀ソフトでも対応できるようにデータ取得部分と思考部分が分離されてると思ってたから、
あんまり分離されてなさそうなのが意外だったかも。
ぶっちゃけデータ取得部を流用させてもらおうと思ってたから残念
ちなみに、正直Cで変数いじりしかまともにできない俺にはいまいちわからんw
もうしばらくしたらAI作りはじめられると思うからその時はよろしくっ
126
(1): 96 2007/02/12(月)15:20 ID:IDAaCxE5(1) AAS
やっと修論を書き終えることができました!
三徹の影響で頭がぼーっとしているため、日本語が変かもしれませんが、ご容赦くださいw

>>124
確かに趣味で行う以上は「楽しさ」が最優先ですもんね。
僕も作る作業自体が楽しいので、車輪の再発明だらけです。
実際、MJexeIO.exeで提供されている機能以外は全部一から実装しましたし。
>>117でソースを公開した後、シャンテン数計算のルーチンを改良したのですが、
省9
127: 2007/02/13(火)06:51 ID:gYGMMXlO(1) AAS
>>126
あれ、今見てみたらちゃんと分離されてますね、何勘違いしたんだろw
とりあえず入試が終わるまで全然手つけられなさそうな今日この頃ですorz
明日入試なんだけど受かる気しないやorz
128: 2007/03/25(日)17:39 ID:/+ddsj91(1) AAS
おまいら最強の麻雀プログラムしてみろよ
2chスレ:tech
129: 2007/03/25(日)18:32 ID:UqHs+UFp(1) AAS
見にいったけどひどくレベルが低くないか?
テンパイチェックすら組めなそうな人ばっかりに見える
130: 2007/03/27(火)18:23 ID:AcanRDec(1) AAS
>>94
「MJSim」の最新版って有る?
131: 2007/06/17(日)16:57 ID:rBhd2fbQ(1) AAS
>>117のソース、興味ある。
誰か上げてくれないか。
132: [age] 2007/08/10(金)22:29 ID:/4P+OHAU(1) AAS
aaa
133: リンク [age] 2007/09/30(日)19:03 ID:IMLVX+zL(1) AAS
なぜ最近の犬学生は麻雀できない奴が多いの?
2chスレ:campus

★★★ 学校で麻雀を教えるべきだ ♪♪♪
2chスレ:edu

なんで最近の若者は麻雀できない奴が多いの?
2chスレ:mj
134: 2007/10/04(木)21:01 ID:HFnYJuJ5(1) AAS
せのたんは仮性包茎だったけど太めで包皮の上からカリが分かるプックリ型で良チンだったよ
135: 2008/04/18(金)23:45 ID:ZXDlZmWL(1) AAS
まだこのスレがあったwww
136: 2008/04/27(日)15:51 ID:7kUIsgPs(1) AAS
おまいら最強の麻雀プログラムしてみろよ Part2
2chスレ:tech
137: 2008/07/27(日)01:30 ID:FAVGJPP8(1) AAS
あげ
138: 2008/07/29(火)00:08 ID:z7Yquf9f(1) AAS
さげ
139
(1): 2008/10/19(日)00:59 ID:7mqKFfWk(1) AAS
オープンネットワーク麻雀
外部リンク:sourceforge.jp
140
(1): 2009/02/25(水)01:01 ID:B3OIG4R1(1) AAS
純粋に役判定だけしてくれるライブラリって無いですかね。
141: 2009/02/25(水)15:38 ID:O2MoAZ4b(1) AAS
>>140
作ってうp
142: 2009/03/12(木)21:59 ID:zQ85wj82(1) AAS
作った
143: 2009/03/31(火)11:17 ID:8CzZ1Tdw(1) AAS
>>139
面白そうなことしてますね、HP見たけどどこまで進んでるか不明だった。
麻雀AI持ってるから、その上で動くAI作ってもいいけど。
いつ頃そのようなことができる?
ただし、C++のみRubyは覚える気ないのよ〜〜、 Winにも入れる気がなかったりして・・・
144: 2009/08/18(火)20:45 ID:O344lzLj(1) AAS
あげてみる
145: 2010/07/04(日)10:22 ID:5u/6soF2(1) AAS
天鳳shirou_0のタメツモタメロン逆切れ粘着ストーカー最強
146
(1): 2010/07/04(日)18:40 ID:StqxSj8Y(1/2) AAS
まだやってんのかこのスレ(w

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

しかも定跡らしき手法がないんだコレが。
ジン・ラミーなんか麻雀よりだいぶ簡略化されてるが、
省9
147
(1): 2010/07/04(日)18:50 ID:MFQ3orwH(1) AAS
サマをするAIとか、AIの意味ねえから…w
148
(1): 2010/07/04(日)22:29 ID:StqxSj8Y(2/2) AAS
>>147
いいこと言った(w
だけど、AIって基本「相手が誰か分からない」っつー
前提があるじゃん?
相手の癖とか考慮できないわけだし、
コンビ打ちとかされたら、
不完全記憶ゲームだから解がない可能性だってあるわけだ。
省2
149
(1): 2010/07/05(月)03:40 ID:hJG4Gafv(1) AAS
>>148
そういう人間っぽい戦略をするAIはある意味夢だよねw
でも、無作為な相手を対象としたAIでも価値はあると思う。

もし無作為な相手を対象として、平均的に強いAIが組めたら、
それより強いAIを組むために使えるじゃないかw
150: 2010/07/05(月)20:46 ID:KmfV60ed(1) AAS
>>149
> そういう人間っぽい戦略をするAIはある意味夢だよねw
待て待て。まず、
・プレイヤーの個人認証をする(過去の対戦記録から
対策を練ってくる)。
・戦略に名前とキャラを与える(プレイヤー側のハンデに
ならないように、条件を同じにする)。
省1
151: 2010/07/06(火)00:53 ID:Y3oGudsH(1) AAS
一人のAIをこのスレの住人でフルボッコにするシステムを作って、
住人の打ち筋から学習するわけですな。

でも、まず戦略上の有意で重要なパラメータが何かが分からないと思うんだ。
ベタ降り 早上がり 大物狙い
ぐらい大雑把なのは思いつくけどさ。
152: 2010/07/06(火)06:23 ID:kxHaNFod(1) AAS
ジン・ラミーは
・半端なカードがあっても合計十点以下なら上がれる
・逆ノックというルールがある
とかでゲーム性を高めているんだが、
麻雀では
・手が揃わないと上がれない
・とにかく他の奴より早く、あるいは同時に上がらないと点にならない
省13
153: 2010/08/11(水)16:30 ID:NAUDnXxM(1) AAS
上げる
154: 2010/09/15(水)23:47 ID:aG+O5gjD(1) AAS
おまいら最強の麻雀プログラムしてみろよ Part3
2chスレ:tech
155: 2010/10/17(日)01:57 ID:2TPZ9K5W(1) AAS
麻雀プログラムWiki
外部リンク:www26.atwiki.jp

麻雀シミュレータ MJSim
外部リンク[zip]:www26.atwiki.jp
156: 2011/01/22(土)01:12 ID:oi0iQAjA(1) AAS
ここまで反応なしw
157: 2011/02/09(水)15:27 ID:516SVfzt(1) AAS
■関連
2chスレ:pinknanmin
158: 2011/06/12(日)08:11 ID:PMFpryTR(1) AAS
>>146

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

それSEの能力が足りないだけじゃん
159
(1): 2011/06/13(月)02:53 ID:IP0E3i88(1) AAS
できるだけ、自然に見えるようにイカサマする。

レベルによって1〜5個ほど島からツモり、必要な牌を1つとり、もどす。
160: 2011/06/20(月)18:56 ID:zP5I0UGQ(1) AAS
最も必要な牌がわかるならイカサマ無しでも強いと思う
161: 2011/06/21(火)13:22 ID:ET4j6FRl(1) AAS
たしかにw
162: 2011/06/21(火)21:29 ID:YX7p+Rwp(1) AAS
最も必要な牌が分からなくても、必要な牌は分かるよね。
シャンテン数が上がるか否かの判定だけでも十分。
点数の期待値とか一切考えず、シャンテン数が上がればその中からランダムで決めるって操作だけでも、
>>159のイカサマをされれば十分きつい。
上がってしまえば、相手がどんなに高めを狙おうと関係ないし。
163: 2011/07/03(日)17:02 ID:39f+tRWY(1) AAS
そのイカサマが何の役に立つの?
164: 2011/07/03(日)22:04 ID:qY4R3eSD(1) AAS
んなもの知らんよ。
最も必要な牌が分かるならイカサマ無しでも強いって言ってたから、
イカサマするのに最も必要な牌が分かる必要はないと反論しただけ。
165: 2011/07/05(火)00:56 ID:+NpHHO4E(1) AAS
シャンテン数判断を組み込めるってのが十分高いハードルだからなー
イカサマいらなくなるでしょ
166: 2011/07/05(火)23:21 ID:PC/+TWgq(1) AAS
>シャンテン数判断を組み込めるってのが十分高いハードルだからなー
お前にとってシャンテン数の判定が高いハードルなら、麻雀ロジックを考える上で何なら出来るんだよ…。
自分で作れなかったとしても、シャンテン数判定プログラムなんてググればソース付きで見つかるだろ。
167: 2011/07/27(水)21:47 ID:gNsRmOz6(1) AAS
上がり判定アルゴリズムが正しく作れるなら
普通シャンテン数判定も出来るわなぁ
168: 2011/07/28(木)10:09 ID:2bUtDyJG(1) AAS
それは別だと思うが
169: 2012/07/18(水)00:41 ID:gqYFb15W(1) AAS

170: 2013/01/20(日)15:45 ID:x/ZxDQc7(1) AAS

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

麻雀 和了判定(役の判定)アルゴリズム  連続した牌の数をインデックスにする方法
外部リンク[html]:hp.vector.co.jp
172: [age] 2014/10/04(土)09:44 ID:bkEdK/cy(1) AAS
age
173
(1): 2014/10/04(土)14:12 ID:csngvuvA(1/2) AAS
0.優劣判定の準備
param[][14]を用意

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

2.打牌毎のシャンテン数チェック
ある牌を切ったtehai[13](14通り)それぞれに対して、シャンテン数計算。
省18
174: 173 2014/10/04(土)14:13 ID:csngvuvA(2/2) AAS
ポイントは、オリの局面で安全度で同点首位の2択になったような場合、
自然と手牌をぐちゃぐちゃにしない打牌が選ばれるところ。

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

パラメータの調整にあたって、今後、機械学習を導入する方針。
省2
175: 2014/10/11(土)20:29 ID:YpszWTxL(1) AAS
捨て牌選択時の役判定はかなり重要
特に鳴いた後
混一色一択で鳴いたのに形テン狙いのまま字牌を切りまくるクソAIとかw
あるいは手が確定できる鳴きしかやらないというのもゲーム的にはアリだけど

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

もひとつ、振りテンチェックも地味に効く…見逃ししないならそれほどでもないか
176: 2016/07/05(火)17:36 ID:k6tcQJSy(1) AAS
「おはようふじもん」

Twitterリンク:fujimon_marlife
177: 2017/12/31(日)22:44 ID:/rN76OKL(1) AAS
簡単にお金が稼げる方法興味ある人だけ見てください。

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

R664ZOAJOL
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.274s*