東風荘R変動シミュレーション
3年前 に『Excel VBAで東風荘のR変動シミュレーション』について書いたんですけど、これをJavaScriptで(内容をちょっと簡単にして)やってみたいと思います。
東風荘で順位率『30%-20%-20%-30%』の人が10000試合対局するシミュレーション。(R1500スタート、他家の平均R1500)
var R = 1500;
//Rに初期値1500を代入
function taikyoku(){
//関数taikyoku(青色がその処理)
var ransuu = Math.random();
//ransuuに0以上1未満の乱数を代入
if(ransuu < 0.3){
juni = 1;
} else if(ransuu < 0.5){
juni = 2;
} else if(ransuu < 0.7){
juni = 3;
} else {
juni = 4;
}
//ransuuが0.3未満の場合に1、0.3以上0.5未満の場合に2、
//0.5以上0.7未満の場合に3、0.7以上の場合に4をjuniに代入
hendou = 10 - 4 * juni + (1500 - R) / 300;
//hendouにレーティングの変動値を代入
return hendou;
//hendouの値を関数taikyokuの実行結果として戻す
}
for(var i = 1;i <= 10000;i ++){
//以下の処理を10000回ループさせる
R = R + taikyoku();
//Rと関数taikyokuを足した値を再びRに代入
}
実行結果
【補足】
・東風荘のR変動式についてはこちら を参照。
・400試合未満では試合数補正があるが、今回は全て400試合以上の場合で計算した。(『1位+6、2位
+2、3位-2、4位-6』を他家の平均Rで補正するだけ。)
プログラミングをやりませんか?
「パソコンって何ができるの?」と聞かれたら「何でもできる」と答えるのと同様に、プログラミングは(パソコンでできることは)何でもできます。
また、『パソコンを使う=誰かがプログラミングしたものの恩恵を受ける』と考えれば、かなり身近に感じられるはずです。
【プログラミングとは?】
・プログラミング=コンピュータへの命令文
・基本的な命令は既に用意されているので、それを組み合わせて色々な命令文を作ることができる。
・様々なプログラミング言語が存在し、それぞれで基本の命令や文法が異なる。
・記録、計算、検索、繰り返しなどの面倒臭い作業を正確に素早く行うことができる。
僕はまだ知識が足りなくて大したことはできないんですけど、プログラミングを学んでいく過程を書いていくことで、自分自身のモチベーションにしたり誰かに興味を持ってもらえたらと思っています。
現在はJavaScriptというプログラミング言語の勉強をしてるんですけど、簡単な例としてHelloWorld
をやってみたいと思います。
var a = "Hello World."; //aという変数に「Hello World.」という文字列を代入する
document.write(a); //ドキュメントにaの値を書き出す
【補足】
var:変数の宣言
変数:データを出し入れできる箱のようなもの(今回はaとしたが、bでもcでもhensuuでもいい。)
イメージする多面張
※この記事は多面張理論 に目を通していることを前提として書いています。
最近、門清狂 のレベル4(理牌なし)をよくやるんですけど、その時に僕は頭の中で以下のような変換をしていることに気づきました。













↓













↓



























ちなみにこの手牌は『1・3・6・2』待ちです。(着目ポイントが1単騎、2の暗刻との複合形で3・6待ち、6の暗刻との複合形で2待ち。)
理牌なしの手牌に関しては実践でほとんど使わないので必要ないですけど、単純に横に並べた手牌よりも縦横に並べた手牌(2次元)の方が牌姿を把握しやすくなります。
これを利用して、『多面張理論を理解しやすくする』『2次元の牌姿をイメージして対局する(多面張だけでなく牌理全般で有効)』ということが可能になると思います。
ただ、これだけだと理論的に弱いので、これから他の理論と組み合わせを考えていきたいと思います。(多面張理論の新バージョンとか。)
それから、プログラミングの練習も兼ねてちょっとページを作ってみました。(こちら を参考に所要時間20分くらい、クリックで画像を切り替えるだけですけど。)
・2次元理牌
・多面張練習・解説
麻雀講座論2
それでは今回は麻雀講座(サイト)の『内容』について書いていきます。
まず、基本的にどの講座も内容自体にはそんなに差はありません。(※トンデモ理論を除外すれば。)
その中でポイントになる点は、
・(ルールや作法など)麻雀で統一されていない部分
⇒その講座独自の基準で採用されているが、その基準を明示できていれば問題はない?
⇒僕自身はこれをどうするべきなのかはまだ解決できていない。
・体系化や論理展開
⇒初心者向けはかなりまとまっているが、中級者以上向けでは試行錯誤中(?)のものが多い。
⇒(中級者以上向けについて)結果論を排除していけば体系も論理もシンプルに。
・新理論
⇒最近では統計・プログラミングによるものや特殊なルール・システムに特化したものくらいしか出てきていない。
⇒あったらその講座の目玉になる可能性もあるが、別になくても。
・解説だけでなくその習得法も
⇒単純な解説やデータ・パターンの羅列を読ませるだけでは習得は難しい。
⇒内容でオリジナリティを求めるのであればこの部分が最も手を付けやすい。
こんな感じなんですけど、実際には書いている人の知名度(ネットやリアルでの成績)の影響を受けることも非常に多いようです。(別に何の担保にもなってないけど。)
では、良い『内容』の麻雀講座というのはどんなものでしょうか。
初心者向けの講座に関しては、形式がほとんど完成されていて『見せ方』の方でしかほとんど差がついていないような感じです。(僕自身はもっと良い違うやり方もあると思っていますけど。)
中級者以上向けの講座に関しては、『単なる読み物でなく、技術として成立しているか?』という部分が差になると思います。
例えば、現代麻雀技術論 はかなり良く出来てますけど、『単なる羅列でなく、そこからセオリーを抽出』『技術として曖昧な部分を再検証』ということができれば、僕からはケチのつけようがなくなると思います。
他にも、麻雀一番街 のフォーラムでは僕が読んでも感心する記事がたまに出たりしますので、それをセオリー化してメインコンテンツの『生きた麻雀講座』と組み合わせれば斬新な講座ができるかもしれません。
最後に、僕自身も麻雀講座を作りたいとは思ってるんですけど、構想は色々と練ってるんですがなかなか形にはなっていません。(『見せ方』をどうするかの問題もあるし。)
いっそのこと、構想を公開するので他の人に作ってもらうとか?(それはあんまり虫が良すぎるか?)
ポーカーについてちょっと調べてみる
『賭け麻雀の合法化を目指すべきなのか?』ということに関して、「麻雀以外の分野についてはどうなのか?」が知りたくなったので調べてみることにしました。
ポーカーは対戦人数の違いはあるものの、それ以外の部分について共通点が非常に多く、麻雀との比較で何か新しくわかるのではないかと思っています。(ポーカー以外にも他に何かあるか?)
今のところは情報集めをしていて、
・日本プロポーカー協会 (ポーカーのプロ団体?)
・ポーカーナビ.jp (ポータルサイト)
・ポーカーSNS (誰か偉い人にコンタクトを取って話を聞きたい。あわよくば配信も。)
・近代ポーカー情報 (情報サイト)
・JPPA キックオフトーナメント on USTREAM (ページ下部の『過去のライブ』で過去ログを視聴可。)
とりあえず、上のサイトに目を通している段階です。
その中で今日見つけたのが『ライブゲームとは? 』『ポーカートーナメントとは? 』『違法?合法?オンラインポーカー 』という記事です。(麻雀で言うところのセットや大会があって、そこでお金をやり取りするのは国内では違法。)
あと、規模がまだ小さい分だけ業界にまとまりがあるような気がするんですけど、実際はどうなんでしょうか?
続報を待て!(情報を募集中。誰か詳しい人いないかな?)