好奇心の横断歩道を創る!

自分の思考をラバーダック・デバッグするためのブログ

エージェントの分布が特定の対数正規分布になるような、「個々のエージェントのランダムさを含む移動規則」の一例についてのメモ

 

エージェントの位置が一次元であらわされるような場合を扱う。

 

 

 

結論

時間tにおけるエージェントの位置座標をxとおく。x>0の条件を付ける。エージェントの移動規則を、

 x_{(t+1)} = \exp\{\frac{(\ln{x_{(t)}} + \sigma_r r)\sigma}{\sqrt{\sigma^2 + \sigma_r^2}} + \mu (1 - \frac{\sigma}{\sqrt{\sigma^2 + \sigma_r^2}})\}

とすると、個々のエージェントの移動が確立的なランダムさを含みつつ、エージェントの位置の確率密度は対数正規分布 f_{(x)}=\frac{1}{\sqrt{2πσ^2}  x} \exp\{- \frac{(\ln{x} - \mu)^2}{2\sigma^2}\}に従う。

(

μは\ln{x} の最頻値、σは値の広がりに、特に強く影響するパラメータ。

rは標準化された正規分布で確率密度を表現される乱数(not 確率変数)

\sigma_rはエージェントの移動しやすさを決めるパラメータ。大きいほどエージェントが移動しやすい

)

ja.wikipedia.org

 

 

シミュレーションの様子

実際この移動規則で分布を調べてみたら、こんな感じ。

t=0, すべてのエージェントの初期位置を400にしてスタート。

t=10

t=100

t=500

t=1000

時間とともに一定の形の分布に収束している。

パラメータは、

 \sigma_r=0.05

 \sigma=0.5

 \mu=\ln{400}

で、エージェント数は10^5

t=1000の時の分布を、目標の対数正規分布の関数の定数倍(オレンジの折れ線グラフ)と比較するとこうなる。

オレンジが分布目標
きれいに一致している

ちなみに、エージェントを10個選んで座標の時間変化をプロットするとこんな感じ。

エージェントの位置座標の時間変化の様子

 

理屈とか

これを考え付いた理由を記録しておく。

参考

rokabonatttsu.hatenablog.com

 

変数変換で正規分布にする。

→同じ正規分布を維持しつつ個々のエージェントを移動させる(過去記事)

→変数変換で対数正規分布に戻す

の流れ。