線路ネットワークを解析してみた

本記事はFUN Advent Calendar 2018の15日目の記事です.

昨日は_n_el君でした.

自己紹介

本記事では

日本の電車の路線ネットワークの解析をやります.駅データ.jpさんからデータをいただきました.ここには,JR(新幹線含む),地下鉄,市電なんかも入っています.

本来であれば,重みを距離や所要時間として解析するのが好ましいのですが,今回は面倒なので重みなしの無向ネットワークで解析をします(駅:ノード,路線:エッジ). なお,新幹線は抜きでやります(重みがないため,東京函館間などが凄く近くなってしまうため).

アルゴリズムの説明などはしないので,興味があればリンク先の説明を読んでみてください.

ネットワーク構造

複雑ネットワークには,スケールフリーネットワークというものがある.これは,横軸に次数,縦軸にその頻度をとったときに,べき乗則に従うネットワークのこと.

f:id:Cer0un0:20181210172930p:plain 上のグラフでは,次数2の駅が8000個あるということ.次数1の駅は当然少ないわけで,べき乗の形はしていない.しかし,次数2以降を見れば,べき乗っぽく見えるかも.

べき乗則に従うということは,両対数をとれば当然線形になる.ということで,一応プロットしたのが以下. f:id:Cer0un0:20181210172923p:plain

次数2以降はわりと直線に近いことがわかった.

日本の中心の駅はどこか

さて,じゃあ日本の駅の中で中心にあるのはどこなんだろうか.複雑ネットワークには中心性というものがいくつかあるのだが,今回は媒介中心性を使ってみる.簡単に言うと,あるノードvが任意の2つのノードの最短経路上にどの程度あるのかというもの.

上位5件は以下.

媒介中心性
1 塩尻(長野県) 0.3728
2 恵那(岐阜県) 0.3671
3 美乃坂本(岐阜県) 0.3661
4 中津川(岐阜県) 0.366
5 合川(岐阜県) 0.366

上位5件では長野県・岐阜県しかないのだが,近畿・中部地方がトップを独占していることがわかった.これは感覚的にも正しい気がする.ちなみに,東京都の駅で最も媒介中心性が高かったのは147位の八王子駅だった.

次数中心性を使えば,関東地方の駅が多く上位に入ってくるのは間違いないだろう.

町田は神奈川?

「町田は神奈川」というように,町田はよくネタにされる.じゃあ,ネットワーク構造的に町田駅は東京都よりなのか,それとも神奈川県よりなのかを知りたい.

コミュニティ抽出

今回はLouvain Modularityを使ってみた.以下のネットワークは町田駅が属しているコミュニティ.

f:id:Cer0un0:20181210185850p:plain

町田駅が赤,東京都の駅が青,神奈川の駅が緑になっている.

このコミュニティに含まれる東京都と神奈川県の駅の個数は以下.

駅数
東京都 66
神奈川県 88

つまり町田は神奈川の駅が多く含むコミュニティに属しているため,町田は神奈川であることがわかった.

ちなみにコミュニティの分割の良さを評価するモジュラリティQは約0.96になった.すごい.

おわりに

在学中最後のアドベントカレンダーになります.来年以降も大学のアドベントカレンダーが立てば書きたいですね. 明日はさとり