\当サイトではリンク広告を利用しています。/
3次元ランダムウォークのシミュレーションをブラウザ上で実行し、粒子が空間内を移動する様子が観察できるサイトツールです。
上の埋め込み内でも使えますが、うまく動かない・大きなページで使いたいというときは、元の3次元ランダムウォークシミュレーションページへ(新しいタブで開きます)。
このシミュレーションは、3次元空間における「ランダムウォーク(酔歩)」を視覚的に体験できる、インタラクティブなプログラムです。
JavaScriptのビジュアルライブラリ「p5.js」を使って作成されており、ブラウザ上で実行可能です。
ランダムウォークとは、粒子がランダムな方向に1ステップずつ動き続ける運動モデルで、物理・化学・生物学・金融など幅広い分野で応用されています。
3次元空間では、ランダムウォークをしている粒子がいつか原点に戻る確率は約34%しかありません。
逆に言うと、66%は戻ってこないまま永遠に離れていきます。
これは次のような直感で理解できます:
これを表で表すとこうなります。
次元 | 原点にいずれ戻る確率 |
---|
1次元(線) | 100%(必ず戻る) |
2次元(平面) | 100%(ほぼ確実に戻る) |
3次元(立体) | 約34%(3回に1回くらい) |
4次元以上 | 0%(ほぼ絶対に戻らない) |
このプログラムでは、プレイヤーはランダムウォーカーの動きを観察しながら、以下の操作を行うことができます。
「開始」ボタンを押すと、3D空間内でウォーカー(粒子)がランダムな方向に動き始めます。
もう一度押すと、一時停止します。
リセットを押すと、ウォーカーは原点に戻り、歩いた軌跡とステップ数が初期化されます。
視点操作は維持されるため、すぐに再スタート可能です。
このシミュレーションでは、WEBGL
モードと orbitControl()
を使っており、マウスのドラッグ操作で自由に視点を回転できます。
まるで空間内をドローンで観察しているような感覚が得られます。
マウスホイールで拡大と縮小が可能です。
UI右下には現在のステップ数がリアルタイムで表示されており、ウォーカーが何回動いたかが直感的にわかります。
WEBGL
と orbitControl()
を使い、3D視点で観察可能1次元や2次元は「原点に戻ってくる」という性質が観察できますが、3次元だとまったく違った挙動が観察できるのが興味深いです。