2024-09-25 と同じ。
https://lsnl.jp/~ohsaki/lecture/training/2024/#8-1
- グラフ上のランダムウォークとは何かを理解し、他人に説明できるようになる。
- グラフ上のランダムウォークのシミュレーションを実行できるようになる。
以下のグラフにおいて、 ノード 1 から移動を開始したエージェント (単純ランダムウォーク (SRW) のエージェント) が、 ノード 6 に到達するまでの時間 (初回到着時間) を実験で求めよ。 実験には、 紙、 筆記用具、 サイコロ (または同等品) のみを使用せよ。
1 5
/ \ /
/ \ /
2 --- 3 --- 4----6
計算機を用いたシミュレーションにより、 課題 1 の初回到着時間を 100 回計測することにより、 平均初回到着時間を求めよ。
課題 2 と同じ。 ただし、 エージェントの移動モデルは、 単純ランダムウォーク (SRW) ではなく、 直前に訪問したノードへの再訪を可能な限り回避する、 不可逆ランダムウォーク (NBRW) とせよ。
課題 2 と同じ。 ただし、エージェントの移動モデルは、 平均初回到着時間が短かくなりそうなランダムウォークを自分で考案せよ。
省略
> sudo pip3 install -U perlcompat tbdump graph-tools py-stats
> git clone https://github.com/h-ohsaki/randwalk.git
> cd randwalk
> wget https://lsnl.jp/~ohsaki/lecture/training/2024/priv/6-srw
> chmod +x 6-srw
※ 上記の 6-srw では、(2, 3) のリンクが不足しているので、(2, 3) のリンクを追加する必要がある。
1 回だけ実行する場合:
> ./6-srw
100 回の平均を計算する場合:
> for i in (seq 100)
./6-srw | tail -1 | awk '{ print $1 }' | sed 's/t=//'
end | stats -v
20 行目の SRW を NBRW に書き替えればよい。
省略
2024-09-25 のものと同じ。
[<16. キャリア設計] [>18. Python 開発環境 (1)]