タグ

乱数に関するohnishiakiraのブックマーク (7)

  • random()とrandom()*random()はどっちがランダムか? | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記

    みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 みんなのブロックチェーンは,ブロックチェーンの入門書。暗号やハッシュなどを含め,基礎からブロックチェーンの仕組みを学べる書籍です。 いろんな方に「新しい技術を学ぶことの楽しさ」を感じ取ってくれたら著者として嬉しいです:-)。お金技術的にどのように定義されるのか。 みんなのIoTは,モノのインターネットと呼ばれるIoTの入門書です。IoTの基について,読者に寄り添って優しく解説しました。裏テーマは一番とっつきやすいPython入門書。サポートページはこちら みんなのPython 第四版は,より分かりやすい入門書を目指し,機械学習やデータサイエンスの章も追加して第三版を大幅に書き換えました。Python 3.6にも華

  • 本の虫: 確率分布の使い方

    C++0xのstd::randomには、様々な分布クラスが存在する。一体どうやって使い分ければいいのか。ここでは、ゲームにたとえて考えてみる。 もっとも簡単な分布は、一様分布(Uniform distributions)である。これは、a ≦ i ≦ b, の範囲の値iを、それぞれ等しい確率で返す分布である。 ゲームでいえば、サイコロやルーレットなどの実装に使えるだろう。 // 六面サイコロの実装 int main() { std::mt19937 rng ; // 一様分布 // 0から5までの数字を等しい確率で返す分布 std::uniform_int_distribution<> dice(0, 5) ; int a[6] = { } ; // 六面サイコロの出た目の回数を記録する配列 // 600回サイコロを振る for ( int i = 0 ; i != 600 ; ++i )

  • JavascriptのMath.random()でユーザートラッキングができるという話 - kogelab::memo

    表題の件について。 地味な話ですが、javascript(というかECMAの仕様)にあるMath.random()には、乱数のシードを与える方法が無いようです。 そんなわけで、われわれ一般市民は各ブラウザが独自に実装している、謎のシードで初期化された謎のアルゴリズムで作られた乱数を通常使うわけですが。 Mozillaからこんなの出てた。 曰く、Math.random()のシードによる初期化は、ブラウジングセッションごとに1度しか行われないと。 で、シードはまあ、かぶる率そんなに高くなさそうなので、そのシードをUSERの(擬似的な)ID代わりにしてしまえば、ユーザーのトラッキングができるよーん、とのこと。 はじめ読んだとき、「おおー、かっけー!」と思ったんですが、ちょっと待て。 シードって外から取れんのか。 というわけで、色々調べたところ、各ブラウザは(多分IEも)線形合同法による擬似乱数を

    JavascriptのMath.random()でユーザートラッキングができるという話 - kogelab::memo
  • 隠れた良書「計算機シミュレーションのための確率分布乱数生成法」を大プッシュしたい - EchizenBlog-Zwei

    偶然見つけたのだが「計算機シミュレーションのための確率分布乱数生成法」が大変な良書であったので、とりいそぎメモしておく。ちゃんと読んだら後でレビューする。 書は簡単にいうと「様々な分布から乱数生成(サンプリング)するプログラム」の実装法をまとめた。確率統計のを読んだりして「○○分布からサンプリング」すれば良いことはわかったのだが、どうやって実装していいかわからず途方に暮れた経験を持った人は多いのでは。 そういった方にとって書は福音となるのではないだろうか。 とりあえず書はweb上に情報が少ないので、どんな分布を扱っているのか列挙しておく。かなり多いので驚かれるかもしれない。 [連続分布] 正規分布(Normal distribution) 半正規分布(Half Normal distribution) 対数正規分布(Log-Normal distribution) コーシー分布(

    隠れた良書「計算機シミュレーションのための確率分布乱数生成法」を大プッシュしたい - EchizenBlog-Zwei
  • 疑似乱数の善し悪しを可聴化して耳で聴いて感じてみた - UDONCHAN

    サイコロを振って出る目が予測不可能である一方で,コンピュータの世界は予定調和で,つまるところ,同じプログラムを同じように走らせると同じ結果が得られる.じゃあ乱数はどんなんだと言われるかもしれないが,(少しプログラミングを嗜んだ程度の人ならば分かるだろうけれど),例え乱数を仕込んだプログラムに対しても同様の入力を与えた場合,往々にして同様の結果が得られるものだ.プログラムにおける乱数とはそういうもので,こういう乱数を一般的に疑似乱数というらしい.このエントリで扱う乱数は疑似乱数とする. さて,世の中には良い乱数と悪い乱数が存在しているらしく,良い乱数ほど処理コストが高く,専門家の皆様は解決に苦しんでいるらしい.僕は,乱数の専門家では無いので乱数の善し悪しをどう評価するかは知らないのだけど,なんとなく乱数が分散していた方が良いのではないのかと思った.じゃあ当にそうなのか確かめるにしても結局統

  • 初めてのおもちゃ箱 [Ruby][アルゴリズム入門]乱数

  • FF12の乱数について

    概要 FF12が内部でどのように乱数を扱っているか調べたので、分かったことを書くよ。 目次 概要 表記 注意 導入 生成器Aの特徴 A系列のよくある利用パターン A系列を使う処理 銃 素手 斧、ハンマー、ハンディボムによる攻撃のダメージ計算 ケアル、ケアルダ ポーション、ハイポーション、エクスポーション、エーテル、ハイエーテル トレジャーの開封 セーブデータのロード A系列の乱数を消費しない行動 応用例 乱数位置の特定 5hits法の原理 "セロビ台地/交差ヶ原"のトレジャーPOP法則 分かっていないこと 表記 この文章では以下の規則に従う。 ⌊x⌋で、x以下の整数のうち最大のものを表す。 x % yで、xをyで割った余りを表す。x % y = x - y * ⌊x / y⌋ 注意 この文章では、FF12内の乱数の規則性を観察し、それを制御する方法について述べている。こういうプレイははおそ

  • 1