Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Graphillion を用いた最長片道切符ルートの算出
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Psyduck
October 15, 2020
0
1.1k
Graphillion を用いた最長片道切符ルートの算出
みんなのPython勉強会#62での発表資料です
Psyduck
October 15, 2020
Tweet
Share
More Decks by Psyduck
See All by Psyduck
調剤薬局の医薬品備蓄数について調べてみた
yukou_isshiki
0
810
初めてPyCon JPのスタッフをやってみた
yukou_isshiki
0
710
技術書典6の振り返り
yukou_isshiki
0
390
Featured
See All Featured
Abbi's Birthday
coloredviolet
1
4.8k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
210
The browser strikes back
jonoalderson
0
420
GraphQLとの向き合い方2022年版
quramy
50
14k
First, design no harm
axbom
PRO
2
1.1k
Speed Design
sergeychernyshev
33
1.5k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
920
The Mindset for Success: Future Career Progression
greggifford
PRO
0
240
Making Projects Easy
brettharned
120
6.6k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Practical Orchestrator
shlominoach
191
11k
Transcript
Graphillion を用いた最長片 道切符ルートの算出 Psyduck みんなのPython勉強会#62
自己紹介 Psyduck ・https://psyduck-take-it-easy.hatenablog.com/ ・Python歴は4年目 ・普段はECサイト向け検索エンジンを作る部署に所属 ・PHP、Bashがメイン ・業務Pythonは調査用クロールスクリプトのみ ・個人では日々Pythonの可能性を模索中 ・2ヶ月連続登壇
最長片道切符とは ・JRの旅客営業規則で発券可能な最長距離の片道切符 ・1961年の東大旅行研究会が最初の旅行者とされる ・ただし、ルートはJRから公表されていないため、自力で算出する必要がある ・運賃を手計算するため発券に数日掛かる 最長片道切符(例) 出典:JR最長片道切符の旅2013
具体例 ・秋葉原→東京 ・山手線であれば5分程度で到着する ・最長片道切符では右のようになる 出典:JR東日本
先行事例 ・デスクトップ鉄さん(http://www.desktoptetsu.com/saichohensen.htm) ・ただし、Excelで算出(Excel 2010以降では動作不能) ・halpha656さん(http://halpha656.hatenablog.com/entry/2014/08/28/120040) ・Graphillionを用いたルート算出 ・ここのコードを改良した
Graphillionとは ・https://github.com/takemaru/graphillion/wiki ・大規模なグラフセットを効率的に扱えるPython ライブラリ ・電力網から効率的な送電経路の算出等に使用された実績
課題 ・データを手動で作るには煩雑 ・計算量削減のため、区間を分岐駅ごとにする作業が大変 ・出力がみにくい ・別途並び替える必要があった 中央線を例にすると、 東京-神田-御茶ノ水-代々木-新宿
改良事項 ・駅間距離データを用意すれば計算用データに変換できるように改良 ・ダイヤ改正ごとの修正が簡易に ・ルートが順番に出力されるようにした ・別のプログラムを組まずにできる
課題 ・多くのメモリを必要とする ・GCP Comute Engine n1-highmem-96(96 vCPU、メモリ 624 GB)で検証 ・九州の計算が出来ない…
今後の展望 ・メモリ消費量の削減 ・手軽に算出できる環境の整備
https://github.com/yukou-isshiki/most_longest_ticket_root_calc