Let’s talk about random numbers!

ご無沙汰しています。めっきり寒くなってきましたが、お元気でしょうか?
乱数についての面白い記事を見つけました。

社会シミュレーションをしていますと、人間の行動やモノの動きの揺らぎを表現するために乱数を使う機会があります。ゲームのプログラミングや、ギャンブルなどでも乱数はよく使われるのですが、「乱数のコク」という面白い表現を見つけましたので、ご紹介します。

「乱数にコクを出す方法について」
http://togetter.com/li/1044668

上記のまとめの中でも、紹介されていますが、プログラミングで単純に乱数を使うことが、人間の直感に反することがあることが指摘されています。

たとえば以下のページでは、単純な乱数と、乱数にコクを出したときの振る舞の違いがわかりやすく示されています。

「乱数チューニングによる動きのコク」
http://fladdict.net/exp/random/

最後の「芳醇なまろ味を出した乱数」というのは、言いえて妙だと思いました(笑)。

上記のページでは、乱数の分布に基づく表現でしたが、以下の2つのページで示されているクラゲの動きでみると、確かに乱数にコクを入れた方が、自然だよね〜、と感じます。

「乱数にコクのないクラゲ」
http://fladdict.net/sketches/jellyfish/

「乱数にコクを出したクラゲ」
http://fladdict.net/sketches/jellyfish2/index.html

個々の動きは乱数的であったとしても、系全体でみると、やはり中心極限定理に落ち着く可能性があるな〜、と感じます。社会シミュレーションでは、他の人の行動の模倣により、行動が伝播することが考えられていますが、伝播するということは、皆が好き勝手に行動しているわけではない、ということなので、やはり、乱数の系列の重ね合わせがどれくらい発生しているのかを、系ごとに考える必要があるのだな、と思います。

エージェントシミュレーションでは、対象とする社会の個々の要素の動きからシミュレートしようとするので、より高次の組織ほど、乱数の系列の重ね合わせが効いてくることになり、マクロになるほど、中心極限定理の影響で、いわゆる平均的な結果が出てくるようになると思います。いきなり、高次のものをシミュレートしようとすると、乱数の影響で、「こんなことは起こらないだろう」という現象が起きやすくなるということです。とはいえ、エージェントシミュレーションでは、どこまでを要素分解していくかが難しいところなんでしょうね。

This entry was posted in プログラミング, 社会シミュレーション. Bookmark the permalink.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

当てはまる数字が認証コードになります. *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>