タワーマジック面白い

一応生きてます。

この間久々にマジックをやったんですが、やっぱりタワーマジックって面白いですね。
自分も、カジュアルなレガシー遊びに付き合ってくれていた周囲の友人も、だんだん構築に対する興味がほとんどなくなっているし、マジックは一生タワーマジックだけ…

一応生きてます。


この間久々にマジックをやったんですが、やっぱりタワーマジックって面白いですね。
自分も、カジュアルなレガシー遊びに付き合ってくれていた周囲の友人も、だんだん構築に対する興味がほとんどなくなっているし、マジックは一生タワーマジックだけでいいやと思い始めました。

MTG計算機トップ更新

http://togetter.com/li/344541

ここからのリファがあって覗いてみたらMTG計算機間違ってる?って話がありました。
ちなみに、ソース見ればわかるけど

特定のカードを引く枚数の期待値の計算
投入枚数*引く枚数/デッキ枚数

特定のカードを丁度特定の枚数だけ…

http://togetter.com/li/344541


ここからのリファがあって覗いてみたらMTG計算機間違ってる?って話がありました。
ちなみに、ソース見ればわかるけど


特定のカードを引く枚数の期待値の計算
投入枚数*引く枚数/デッキ枚数

特定のカードを丁度特定の枚数だけ引く確率の計算
combin(投入枚数,必要な枚数)*combin(デッキ枚数-投入枚数,引く枚数-必要な枚数)/combin(デッキ枚数,引く枚数)

特定のカードを特定の枚数以上引く確率の計算
上の式で0から求めたい枚数未満まで合計して1から引いたもの



combin(n,r)はコンビネーションのnCr


という数式で計算しています。
あと確率の方は100をかけて%化しているけどそれだけ。

よくとんでもない電波を拾って頭のおかしいことを言っている自分でも、さすがにこの数式に関してはどこをどう見ても間違ってないと思うんだけどな・・・。


で、統計学がなんたら~って話が出てくるけども、多分この人が引っかかってるのは下の方にある出せるマナの確率一覧表の方なんじゃないかと思いました。
なんとなく、ざっくりした平均値を書くだけじゃなくて、「n%信頼区間をきっちり示せよ!じゃないとなんか気持ち悪いだろ!」ということなのかなと。
もしそういう意味で言っているなら、確かにそれはあるというか、雑なものを載せてごめんなさいとしか言えません。


というわけで誤解を生みやすそうなシミュレーションデータの方はトップから見えないようにしました。
データそのものは、シミュレーションに使ったコードに間違いがなければ間違ってないはずなので、(雑だし使い道はあんまないけど)一応残しときます。

あとついでにリンク切れになってた2つの項目をトップから消しました。
こっちは計算そのものも普通に間違っていたので早々に消したやつです。

轟く怒りの研究その1

最近MTGの情報を積極的に拾ってなかったら変なカードがあってびびった。
バーン好きとしては久々に検討に値する火力のような印象を受けたので簡単にシミュレーションしてみた。

ちなみに、通常コストでのプレイは一切せず、かつマリガンも特に轟く怒りを考慮せず、ノーラ…

最近MTGの情報を積極的に拾ってなかったら変なカードがあってびびった。
バーン好きとしては久々に検討に値する火力のような印象を受けたので簡単にシミュレーションしてみた。

ちなみに、通常コストでのプレイは一切せず、かつマリガンも特に轟く怒りを考慮せず、ノーランドとオールランドの場合のみマリガンするという条件。

各ターンの呪文のプレイはプレイ可能な重い物から優先的にプレイ。
火炎破は山2枚あってライフ4以下、もしくは山4枚あって火炎破2枚持っててライフ8以下の時だけ代用コストでプレイ。
裂け目の稲妻は他にプレイする呪文がない場合のみ通常コストプレイ。

試行回数100万回。


山20
稲妻12
裂け目の稲妻4
炎の稲妻4
火葬9
炎の投げ槍3
火炎破4
火炎の裂け目4

というデッキの場合

平均キルターンが5.49
キルターンの確率分布(%)が1キルから順に
0、0、0.1591、17.9705、41.4638、23.8184、9.8581、3.9359、1.7892、0.646


ここから炎の稲妻4枚を轟く怒りに交換すると
平均キルターンが5.63
キルターンの確率分布が1キルから順に
0、0、0.5556、19.4756、36.3354、21.9759、11.1261、5.6728、2.8306、1.2545

炎の稲妻ではなく、火葬4枚を轟く怒りに交換すると
平均キルターンが5.58
キルターンの確率分布が1キルから順に
0、0、0.7693、19.653、35.208、23.6746、11.7683、5.1043、2.3319、0.9611

炎の投げ槍3枚を轟く怒りに交換するの場合、
平均キルターンが5.64
キルターンの確率分布が1キルから順に
0、0、0.6552、18.6051、34.0751、24.7175、12.5256、5.2632、2.4854、1.0592



ちなみに炎の稲妻を2枚残して2枚だけ交換すると、
平均キルターンが5.56
キルターンの確率分布が1キルから順に
0、0、0.3979、18.7326、38.6591、23.2047、10.5702、4.7245、2.2557、0.9177




大雑把に見ると、3キル4キルの確率が2%程度改善する代わりに5キル確率が3~6%ほど下がって、5キル以降の確率は上がるという感じかな。
この結果だけを見る感じでは、単純に既存の火力と交換すればいいというものではなさそうに見える。
ただ、今回マリガンの段階で轟く怒りを持っているかどうかを一切考慮していないので、そのへんを考慮するともっと全然違う結果になるような気もする。
このカードを知った時の直感では、なんとなく早くなるように思ったんだけど、果たしてマリガンを考慮した場合は早くなるのかどうか。

ただ、マリガンの条件をどうするかが困るんだよなあ。
2枚以上持ってる時はマリガンとか?

現在の手札h枚として、「マリガン後のh-1枚スタートの平均キルターン<現在の手札でスタートの平均キルターン」ならマリガンってのを一回やってみたいけど、シミュレーション時間が爆発的に長くなるような気がする。

まあなんか思いついたらその2があるかも。

シャッフルとかいろいろメモ

アクセス解析を辿って

結局シャッフラーの件は
http://wenmin0624.diarynote.jp/201112312011144764/

のシャッフルの話からいろいろ調べていたらスゲー時間たってた。
ちなみにここでうちの名前挙げられてるけど、そういうネタを書いた覚えが無いので自分ではありま…

アクセス解析を辿って

結局シャッフラーの件は
http://wenmin0624.diarynote.jp/201112312011144764/

のシャッフルの話からいろいろ調べていたらスゲー時間たってた。
ちなみにここでうちの名前挙げられてるけど、そういうネタを書いた覚えが無いので自分ではありません。


MTGのシャッフルについて書かれたものだとこれがわかりやすい。

【翻訳】僕のシャッフルはデッキを十分に無作為化できてるんだろうか?/Am I Shuffling Enough - Or Correctly, For That Matter?【SCG】
http://regiant.diarynote.jp/201201202104281778/
原文



ここで出てくる7回リフルシャッフルすると十分混ざるという話は、多分Persi Diaconisらの研究の話のようだ。
その数学的な説明は多分これ。


マルコフ連鎖と混合時間
 ーカード・シャッフルの数理ー
http://www.kurims.kyoto-u.ac.jp/~kenkyubu/kokai-koza/H23-kumagai.pdf


トランプ52枚で十分ランダム化するのに7回もリフルシャッフルが必要ならMTGで普通の人がやっているシャッフルはあんま無作為化できてないのかもしれないね。
ようは6回目くらいまではほとんど混ざってないけど、7回を超えるあたりから急激にランダムになるということみたいだから。


確率とかの関係の本を読んでいるとよくマルコフ連鎖とかの話になって、高校数学程度でも怪しい自分にはさっぱりわからんということがあるんだけど、時間と気合があれば基礎から勉強したいなと思う。


他にもFisher-Yates法の話とか、全く知らなかったけど面白い話がたくさんあった。
読みたい本が増える増える。




たしか、MWSの確率計算ツールにモンテカルロ法で初手をシミュレーションする機能があって、その中で機械的な完全ランダムのもの以外に、人間のシャッフルをシミュレートするみたいなモードがあったはずなんけど、あれってどうやってるんだろう?


MOのデータを使えば、ゲーム終了後の戦場、墓地、手札をそのまま集めてn回ディール、m回ヒンドゥーとかしたときの偏り、特に数学的な偏りではなくてゲーム的に意味のある偏りについて調べることもできそうなんだけどね。
データを使わずに普通にシミュレーションして偏りを調べようと思うと、ゲーム終了時のテーブルの状態をランダムに再現するのが難しいから、どうしても作為的な実験になってしまうんだよね。
このへん、うまく調べることができたら面白そうなのにな。

ゼロックス理論の計算

ちょっと暇になったので馬鹿な頭でゆっくり考えなおしてみた。

マナを考慮しない以前と同じ方式の場合、1ドローあたりの追加ドローじゃなくて素直にデッキ枚数をドロー分だけ減らしておけばよかったんだなー。

つまり、D枚のデッキでy枚土地があるデッキからx枚ま…

ちょっと暇になったので馬鹿な頭でゆっくり考えなおしてみた。


マナを考慮しない以前と同じ方式の場合、1ドローあたりの追加ドローじゃなくて素直にデッキ枚数をドロー分だけ減らしておけばよかったんだなー。


つまり、D枚のデッキでy枚土地があるデッキからx枚まで土地を減らすとき、

D-(d*x/y)

だけキャントリップを入れると期待値が同じまま減らせる(ただし確率分布は変化する)ということのようだ。

そもそも以前の内容で結果が変になったのは計算の仕方が根本的におかしかったと。


もしまた間違ってたら鼻で笑ってそっとページを閉じてくださいな。

ゼロックス理論の数式の検証–間違い発見編–

なんかアクセス増えてると思ったらネットウォッチスレで話題になってたw

そもそも、期待値を一致させたまま枚数をずらすという根本的なところで何かが間違っているような気がしてきた。
一番初めの人は期待値に引っかかっていたわけだし。

というわけで計算してみ…

なんかアクセス増えてると思ったらネットウォッチスレで話題になってたw


そもそも、期待値を一致させたまま枚数をずらすという根本的なところで何かが間違っているような気がしてきた。
一番初めの人は期待値に引っかかっていたわけだし。

というわけで計算してみたら確かに間違っていた。


例えば、土地3枚投入で全10枚のデッキを考える。
このデッキで1枚引いたとき、それが土地である確率(この場合、期待土地枚数と同じ)は3/10。

n = D(y-x)/x

n= 10(3-2)/2
n= 5

なので、5枚キャントリップを入れれば期待値を一致させたまま、土地を1枚減らせることになるはず。


土地2枚、キャントリップ5枚、その他3枚のデッキの場合、
1枚引いたときの確率は、

2/10で土地
5/10でキャントリップ
3/10でその他


もしキャントリップを引いてキャントリップをすぐ使うとき、

2/9で土地、
4/9でキャントリップ
3/9でその他


さらにキャントリップを引いたとき、

2/8で土地、
3/8でキャントリップ、
3/8でその他です。

さらにキャントリップを引いたとき、

2/7で土地
2/7でキャントリップ
3/7でその他

さらに(ry

2/6で土地
1/6でキャントリップ
3/6でその他

さ(ry

2/5で土地
3/5でその他

になる。


土地を引く確率はこれの、土地の部分だけの和になるので、

(2/10)+
((5/10)*(2/9))+
((5/10)*(4/9)*(2/8))+
((5/10)*(4/9)*(3/8)*(2/7))+
((5/10)*(4/9)*(3/8)*(2/7)*(2/6))+
((5/10)*(4/9)*(3/8)*(2/7)*(1/6)*(2/5))
=4/10


あれ?期待値を一致させたまま土地を減らしたはずなのに期待値が増えとるやないか!!www


昔、特定のカードを引く平均ターンがどうのこうのというネタを書いたとき、デッキの総枚数(欲しいカードの枚数?)を小さくすると、式とシミュレーションから出てくる数字が全然あわなくなったことがあったけど、それに近いことのような気がする。
なぜそうなるのかは自分のアタマでは説明できないけど。


というわけで、該当の記事は今後騙されてしまう人がいなくなるように削除しました。
お騒がせしました。
そしてご指摘くださった方々、どうもありがとうございました。

これだから文系は

計算でなんかやろうとするとすぐ間違える。
特に一般化しようとするときになんかおかしなことをやらかす。
まだ気づいてないだけで過去のネタでも間違ってるのがあるかも。

もう簡単な確率も全部シミュレーションして近似で求める方が確実かもしれない。
ただ、それだ…

計算でなんかやろうとするとすぐ間違える。
特に一般化しようとするときになんかおかしなことをやらかす。
まだ気づいてないだけで過去のネタでも間違ってるのがあるかも。

もう簡単な確率も全部シミュレーションして近似で求める方が確実かもしれない。
ただ、それだと次に同じ理屈を使うときに再利用できないから嫌なんだけど。
ということは、再利用しやすい汎用シミュレーターでも作ればいいのかな。

面白い物をみつけた

はるか昔、4年ほど前のレガシースレ14で自分と同じようなモンテカルロシミュレーションによる分析をしてる人がいた。
力線+オパールの瞬殺確率を調べるみたいな感じだったみたい。
やっぱこういうこと考える人いるよね。

ただ2キル以降の確率はもっとうまくやれるような…

はるか昔、4年ほど前のレガシースレ14で自分と同じようなモンテカルロシミュレーションによる分析をしてる人がいた。
力線+オパールの瞬殺確率を調べるみたいな感じだったみたい。
やっぱこういうこと考える人いるよね。

ただ2キル以降の確率はもっとうまくやれるような気がする。
スレを読む感じだと手札の組み合わせで成功判定をしているみたいだったけど、戦場と相手のライフまでシミュレーションしてしまえば、いちいちnキルできるドローの組み合わせを考える必要がなくなるから、判定が大幅に楽になるはず。

他の瞬殺コンボに比べてプレイングが単純で、かつ複雑な効果のカードを使わないでよさそうだからシミュレートしやすそうだし、しかも今なら力線が増えてて当時と状況も違うだろうし、一回自分でもやってみたい気もする。
まあ、そんなことを言いながら面倒くさいから多分やらないけどw


というか、もっと昔だと、他にも魔力激突の1キル確率をシミュレーションで調べてる人とか、チャネルボールのシミュレーションをやってる人とかもいて、結構いるもんだなと思った。
もっともっとこういうことをする人がいればいいのになー。
そして分析データを眺めてはぁはぁしたい。