Network Analyst




Network Analystの基礎


Network Analystは以下のようなメニューでArcMapに表示されます。


  • 新規ルート
  • 新規到達圏
  • 新規最寄り施設の検出
  • 新規ODコストマトリックス
  • 新規配車ルート(VRP)・・・時間単位の属性が必要
  • 新規ロケーション-アロケーション
などが用意されています。


○新規ルート

では,作成済みのデータを元に例を示します。(データは「ネットワークデータセット」で作成したものです。)
Network Analystのプルダウンメニューから「新規ルート」をクリックします。すると,コンテンツに以下のようなデータが追加されます。
「ルート」というグループレイヤです。



次に,Network Analystのツールバーから,赤枠で囲った「ネットワークロケーション作成」ボタンをクリックします。



どこでも良いのでMap上で,以下のようにプロットします。



次に同じようにアイコンをクリックして,2番目のロケーションを追加します。




二つ以上,追加されると下のように「解析の実行」ボタンがアクティブになります。


結果として,以下のようなラインデータが生成されます。




このデータの属性テーブルは,左のコンテンツにある「ルート」というところに格納されています。
属性テーブルをみると,以下のように距離が表示されています。


これが最短経路となります。
今回のケースは2点間の最短経路検出ですが,複数のポイントをプロットして解析を実行すると,地点間の最短経路を計算してくれます。
その経路にバリア(通行不可)をプロットしておくことで,道路閉塞時のシミュレーションなども可能となります。

○新規到達圏

次は,到達圏です。バッファなどで圏域を示す方法がありますが,最短経路を使った圏域も表示できます。



先ほどと同じように,コンテンツに「到達圏」というグループレイヤが生成されます。
その後,ついでに以下のボタンを押して,「Network Analystウィンドウ」を表示しておきます。


こんな画面になります。



そして,「ネットワークロケーション作成」ボタンをクリックし,適当な場所にポイントを置きます。
その後,「到達圏」のグループレイヤを右クリックし,プロパティを選択。解析の設定を行います。



以下の画面で,「解析の設定」タブの赤枠になったところに数値を入れます。
デフォルトのブレーク値へ「100 200 300 400 500」のような形で,数値を入れていきます。
半角スペースで区切ります。



設定が終わったら,「解析の実行」ボタンを押します。すると,以下のようにリング上のポリゴンが生成されます。


属性テーブルを見ると,100mの距離圏ごとにポリゴンが生成されていることがわかります。
これで,各ポリゴンに含まれるポイントなどの計測が可能となります。







○新規最寄り施設の検出

読んで字のごとく,「最寄り施設」を抽出します。

Network Analystのツールから,以下のように「新規最寄り施設の検出」を選択。
今までと同様に,レイヤーグループが生成されます。名前は「最寄り施設の検出」です。




まず,「施設」と「インシデント」を設定します。
インシデント=Incidentです。出来事とか起こるとか言う意味ですね。ですので,出発点のようなとらえ方でよいと思います。
最寄り施設の検出ですから,それぞれの出発点からどの施設が最も近いか?という算出になります。
では,既存のデータからローケーションを読み込んでみます。
既存のデータから読み込む場合は,「施設」もしくは「インシデント」を右クリックし,「ロケーションの読み込み」をクリックです。



解析の設定を見ます。レイヤグループの「最寄り施設の検出」を右クリックし,プロパティを開きます。
「解析の設定」タブで,移動方向が「インシデントから施設へ」になっていることを確認します。
※デフォルトは「インシデントから施設へ」になっています。




「解析の実行」を行います。結果のアウトプットが以下のように示されます。



各インシデントから施設への最短経路が示されていると思います。
このラインの属性テーブルをみると,各ラインのコスト=長さが入っています。

このように,複数の地区のポイントデータから,病院などの施設までの最短経路を検出し,ラインを生成してくれるのが「新規最寄り施設の検出」

○新規ODコストマトリックス

このODコストマトリックスというのは,起点と終点の最小コストを算出(計測)してくれます。
例えば,複数の起点となる地区の重心から,避難施設までの距離を出したいというときに役立ちます。
以下で例を見てみましょう。

Network Analystのツールから,以下のように「新規ODコストマトリックス」を選択。
今までと同様に,レイヤーグループが生成されます。名前は「OD コスト マトリックス」です。


起点と終点になるポイントデータを用意しておくといいと思います。
ここでは,起点と終点を任意の地点にプロットしてみます。


緑のポイントが起点,青のポイントが終点です。
解析の設定はデフォルトのまま「解析の実行」ボタンをクリックします。
起点から終点に向けてラインが生成されています。




これですとなんだかよくわかりませんから色を付けてみます。
その前に,このラインデータの属性テーブルを見ます。

一番右にあるのが,「コスト」。このデータでは「長さ」がコストになっていますので距離が入っています。
それぞれのフィールドを見てみます。

  • OriginID : 起点の通し番号
  • DestinationID : 終点の通し番号
  • DestinationRank : コストの少ないODのランク(各OriginID単位)

となります。
このように,起点から各終点へのコストを計算し,それぞれにRankを付けてくれるということになります。
この「DestinationRank」をベースに凡例を変更してみます。



Rank(1,2,3,4)=(赤,青,緑,黒)のラインになります。
どうでしょうか,起点から最も近い施設の抽出がこのように可能となりました。
ちなみに,テーブルに格納されるコスト(ここでは距離ですが)は,直線距離ではなく実際の最短距離で計算をされています。




先ほどの「新規最寄り施設の検出」とはまた違った結果になっていますね。
可視化する際にどれが最も効果的かというのも,分析方法を選択する上で重要なポイントだと思います。


○新規配車ルート(VRP)

次は,配車ルートを設定するための分析方法です。最短経路で結んでいってもいいのですが。。。
この分析を行う場合は,「時間」を表すデータが入力されていることが必須となります。
このデータの作り方はネットワークデータセットをご覧ください。

Network Analystのツールから,以下のように「新規配車ルート(VRP)」を選択。
今までと同様に,レイヤーグループが生成されます。名前は「配車ルート(VRP)」です。



主に設定するところは,

  • 訪問先
  • 拠点
  • ルート

です。それぞれにロケーションを読み込むなり,ポイントを配置するなどしてください。
「ルート」を右クリックして,「アイテムの追加」をクリック。





下のダイアログで,「StartDepotName」と「EndDepotName」を選択します。
ここでは,拠点2つをそれぞれ指定します。




ここまですると,「解析の実行」ボタンがアクティブになりますので,実行します。

下の図のように,出発点(紫色の四角1)から終着点(紫色の四角15)までの最小時間を計算して,ルートを設定してくれます。
この最小時間ですが,測度が一律になっていますので,=距離ではあるのですが。
例えば道路幅員によって所要時間を変動させるなどすれば,もう少し結果が変わってくるでしょう。





以上の到達点の設定の他に,「StartDepotName」と「EndDepotName」を同じにすればどうなるかというと,以下のようになります。


属性テーブルを見ると,「59.0710333」となっています。約59分で回れるということです。





<補足~”移動エリアの制限”を設定したらどうなるか~>

当然配達エリアなるものも存在しますから,それを考慮する必要があるかもしれません。
まず,左の「ルートゾーン」をクリックしておいて,「ネットワークロケーション作成」ボタンをクリックします。
適当にポリゴンを作ってあげます。下の図ですと,「紫色のハッチがかかった範囲しか配達しない」という設定にします。



では,順番に。
「ルート」を右クリックし,アイテムを追加します。この時注意する点があります。

【ルートの「Name」を「ルートゾーン」の「RouteName」と同じにしておく。】ということです。

これをしておかないと,いくらやってもエラーが出ます。(なぜかは・・・???おそらく関連づけているのだと思いますが。)




次に,「ルートゾーン」の「アイテム1」を右クリックし,プロパティを開きます。
赤枠で囲った「IsHardZone」属性の値を「True」に変更します。これがFalseのままですと,先ほど書いたポリゴンを無視してルート検索を行ってしまいますので,注意。
準備ができましたので,「解析の実行」ボタンをクリックします。

このメッセージは「エラー」ではなく,範囲外の訪問先は解析対象外だった・・・ということです。



アウトプットは以下のようになります。




先ほど設定したポリゴンの範囲内のみで,ルートが設定されていることがわかります。
属性テーブルでもいいですし,「ルート」-「アイテム」のプロパティをみると,



移動時間が約38分,移動距離が約25,635m(25.6km)ですね。出発時間が8:00ですと,戻ってくるのが8:38頃という計算です。
ルートを設定して,ざっくりとした所要時間や距離を知る上でも有効なツールですね。

○新規ロケーション-アロケーション

ここでは分析対象地点のデータとして,数値地図25000に入っている「地名」のデータを使います。
本来ですと,施設や住宅の重心,地区の重心などがよいとは思いますが。。。

Network Analystのツールから,以下のように「新規ロケーション-アロケーション」を選択。
今までと同様に,レイヤーグループが生成されます。名前は「ロケーション-アロケーション」です。



まず,施設のプロットをします。施設は駅のデータを使います。
「施設」を右クリックし,「ロケーションの読み込み」をクリック。


駅のポイントデータを読み込みます。





次に,需要地点=ここでは地名を入れてみます。
「需要地点」を右クリックし,「ロケーションの読み込み」をクリック。



赤枠で囲ったところに,読み込んだ需要地点のレイヤを選択します。
OKで次に進むと,


青い点が「需要地点」としてのポイントになります。



それから,解析の設定を行います。
「ロケーション-アロケーション」を右クリックし,プロパティを開きます。
「解析の設定」タブから、移動方向を「需要地点から施設へ」を選択。


次に,「高度な設定」を開き,

  • 解析タイプ → 「インピーダンス最小化」
  • 選択する施設数 → 「14」 ※読み込んだ駅の施設数

のように選択・入力を行います。終わったら「OK」。




「解析の実行」ボタンをクリックします。






















この結果ですが,「インピーダンスの最小化」という方法で,ArcGIS Helpによると,

この解析タイプは、商品を小売店に配送する輸送コストを包括的に削減できるため、一般的に、倉庫を配置するときに使用されます。[インピーダンスの最小化] は、選択済み施設まで移動する必要のある全体的な距離を短縮する・・・

とありますので,最小の距離を探すということになりますね,この場合。
そのほかの分析については以下を参考ください。(時間を見つけて追加します。)





ネットワーク解析の応用編







Comments