見出し画像

ランニングコースの自動生成

これは人工芝アドベントカレンダー2022 2日前の記事です。10分で何かをポストします。

ランニングコースに飽きる

今年3月からランニングの習慣化に取り組んでいるのだが、ようやく10月くらいから 10km くらいを無理なく走れるようになってきた。

そこで出てきた問題として、ランニングコースに飽きるということがある。走れる距離が伸びると1-2kmの周回コースでは同じ景色を何度も見ることになり、それだと景色に飽きるという症状が出るようになった。

一つの解決策として河川敷のランニングコースなど一本道の長距離コースを走るというのがある。しかし、長距離コースまで電車の移動が必要だったり家から遠い場合など常にそうしたコースを走れなかったりする。

ランニングコースの自動生成

そこで、見つけたのが次のブログ記事である。

上記の記事の目的としては、自動運転の走行データ取得のために任意の場所からランダムに周回可能な運転経路を生成したいというものであり、今回のランニングコースの自動生成とは目的自体は全然違う文脈である。

しかし、手法としては同じものを流用できそうに見えたので、じぶんの目的であるランニングコースの自動生成に使ってみることにした。

エイヤッと目黒寄生虫館スタート/ゴールとした 10km のコースを自動生成してみたところ、次のようなコースが自動生成された。

コースとしては、目黒寄生虫館からスタートし→大鳥神社→山手通り→池尻大橋の方面→渋谷→代官山→山手通り→目黒寄生虫に戻るというランニングコース(10.4km)である。

目黒寄生虫館スタート/ゴールとした 10km のランニングコース

車道が多めであるが、10km の1周のランニングコースとしてそこそこ悪くないコースが出てきた!👍

一応今回実施したランニングコースの自動生成のやり方を紹介しておく。

ランニングコースの自動生成手順

  1. Python 3.8, git が使える PC を準備済みとする

  2. リポジトリを PC の適当な場所に git clone する

  3. Graphhopper サイトにサインアップして、API KEY を入手する

  4. Google Map でランニングコースのスタート地点をクリックして緯度・経度の値をコピーする(下図の目黒寄生虫の緯度・経度は 35.632443056047315, 139.7063789270803)

  5. 2. の generate_runninng_routes.py 8行目を編集して 3. で入手した API KEY を入れ、PC でターミナルから "python generate_running_routes.py 緯度 経度 走行距離" を実行する(下図のコマンドは "python generation_runninng_route.py 35.632443056047315 139.7063789270803 10")

  6. 結果に Google Map の URL が出てくるため、そちらをブラウザで開いて自動生成されたランニングコースを確認する。実行されたターミナル画面は下図。

手順 5. 6. の実行画面 
手順 4. Google Map で目黒寄生虫をクリックして緯度・経度をコピーする

Trail Router

ランニングコースの自動生成アプリ Trail Router というものがある。

当然、今回のランニングコース自動生成にトライする前に Trail Router のようなアプリも使ってみたが、Trail Router はランニングコースがそこまでランダムに作ってくれない印象を受けたため、上記にトライしてみた。

おわり

普段のランニングコースに飽きたらランニングコースをランダム自動生成してみてはいかがだろうか。

この記事が気に入ったらサポートをしてみませんか?