カテゴリ ‘Math’ 一覧
中心よりの乱数の作り方
はじめまして。主にwebアプリケーションを担当しています立石です。よろしくお願いします。
RIAやUIを作るときの考察などなどをこのブログで書いていこうと思います。
今回は乱数についてです。Flashなどで-1~1までの乱数が欲しいと思ったときに、いつもはrandom = Math.random()*2 – 1と単純に計算していまた。これはflashの乱数が均等に取れていたなら、均等に-1~1の数字がほぼ同じ確立で取れるはずです。
しかし、いつも均等な乱数では面白くないので、違う方法を試してみました。random = Math.random() – Math.random()は、なんとなく中心に寄りそうなのは分りますが、確率など計算しても良く分りませんし、前者との違いもよくわからなかったので、3000個の円で分布図を作って実際に見てみました。ついでにrandom = (Math.random() + Math.random() + Math.random())*2/3-1もやってみました。結果は下の図のようになりました。〔Y軸は特に意味ありません〕

Math.random()*2 - 1

Math.random() - Math.random()

(Math.random() + Math.random() + Math.random())*2/3-1
後者2つの方が少し中心によりました。必要に応じて使い分けていこうと思います。こんなまとめではあれですが、心地良いUI目指して少しずつ研究していきます。
10月20:追記
実験に使用したフラッシュを追加しました。
