そうだ対馬行こう!Alteryxの空間分析で対馬の神社巡りルートを考えてみる。

誉れある分析だけではデータに勝てぬぞ、仁。
2020.08.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。

データアナリティクス事業本部ソリューション部プリセールススペシャリストの兼本です。

皆さんは『Ghost of Tsushima(ゴースト・オブ・ツシマ)』というゲームをご存じですか。
13世紀の元寇を題材としたオープンワールド型のアクションゲームで、プレイヤーは主人公である侍の境井仁として蒙古から対馬を奪い返す戦いに臨みます。

私はまだ中盤までしかプレイできてないのですが、対馬の美しい自然を駆け、高い山の上から見下ろす景色は最高ですねー。メインシナリオをほったらかして、ついつい寄り道ばかりしています。

寄り道といえば、ゲームの舞台となる対馬の地名(小茂田とか厳原とか豆酘とか...)に馴染みがなくて、イベント発生エリアを探すのに苦労していたところ、会社の同僚がガチ地図の存在を教えてくれましたw

神社はゲームの中でも重要なスポットのひとつなんですが、このガイドによると対馬には130もの神社が点在しているのですね。すごい。
というわけで、今回はAlteryxの空間分析を使って聖地(神社)巡礼ルートを考えてみます。

まずはデータの準備から

住所が記載された対馬の神社一覧のデータを探したところ、長崎神社庁が公開している対馬支部の神社一覧がありましたので、今回はこれを利用させていただきます。

最初にAlteryxでHTMLデータを読み込んで、正規表現ツールなどを使って必要なデータを抽出します。
ワークフローはこんな感じ。

  • 最初のデータ

  • 加工後のデータ

さて、現状はすべてのデータがひとつのフィールドに混ざっている状態ですので、クロスタブツールを使って表形式に加工します。
以下はワークフローの続きです。

  • 加工後のデータ

住所から緯度経度を取得(ジオコーディング)

残念ながら、現バージョンのAlteryxでは日本国内の住所から空間ポイントを作成する機能が提供されていないため、ここだけ外部サービスを利用します。
私はインクリメントP社が提供しているMapFan APIを利用させていただくことが多いですが、ここはお好みでサービスを選択してください。

MapFan APIを利用する場合、REST APIを呼び出す処理を実装したツールがAlteryx Public Galleryに公開されています。下記サイトの利用条件などをご確認の上、ツールをダウンロードしてお使いの環境にインストールしてください。

ワークフローはこんな感じになります。

MapFanツールに住所データを渡してワークフローを実行すると、2つの出力アンカーのうち、[S]アンカーから指定した住所の緯度・経度などの情報を返してくれます。
ただし、今回のケースでは、いくつかの住所に対して複数マッチングという結果が返されました。これは指定した住所が間違っているなど何らかの理由で複数の候補が見つかった場合を示しています。

複数マッチングが発生したデータは、候補の一覧が[M]アンカーから出力されますので、この中から適切なレコードを選択する必要があります。
今回は、冒頭にご紹介した対馬神社ガイドブックを見ながら、一番近そうなポイントを目視で選択しました。(実はこの作業が一番大変でしたw)

出来上がったデータがこちらです。

空港から一番近い神社はどこだ?

今回の旅は飛行機で行くことを(脳内で)想定しているので、空港から一番近い神社を探します。Alteryxでは最近傍検索ツールを使うことで、ターゲットとなる空間ポイントに一番近い空間ポイントを探すことができます。

ワークフローを実行すると、ターゲットとなる対馬やまねこ空港から一番近い神社と、そこまでの距離・方角に関する情報を得られます。

さて、複数ポイントを回るルートの総移動距離の最短を探すことは、巡回セールスマン問題(traveling salesman problem, TSP)という古くから研究されている難題のようです。
今回は難題を解決したいわけではないので、シンプルに起点から一番近い目的地を探し、見つけたポイントから一番近いポイントを次の目的地にするのを繰り返す方法を取ります。

Alteryxで繰り返し処理を作成するには、反復マクロを使用します。先ほどの最近傍検索ツールを使用するフローを、マクロを使う形に作り変えたものがこちらです。

  • マクロを呼び出すワークフロー

  • 呼び出される反復マクロ内のワークフロー

このワークフローを実行すると、以下のようなルートを作成することができました。若干交差しているポイントがありますが、ここまでできれば、後は自分でルートをカスタマイズすることもできそうです。

まとめ

ということで、今回はAlteryxの空間分析ツールを利用して、対馬の神社を巡る旅を妄想してみました。

Ghost of Tsushima、その辺を走り回っているだけでも楽しいので、まだプレイしていない方は是非体験してみて下さい!

以上、最後までお付き合いいただきありがとうございました。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400