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
組合せ爆発する経路
Search
NAVITIME JAPAN
PRO
December 17, 2018
Technology
0
35
組合せ爆発する経路
2018年12月17~19日に開催された「IVS CTO Night and Day 2018 Winter」にて発表した資料です。
NAVITIME JAPAN
PRO
December 17, 2018
Tweet
Share
More Decks by NAVITIME JAPAN
See All by NAVITIME JAPAN
つよつよリーダーが 抜けたらどうする? 〜ナビタイムのAgile⽀援組織の変遷〜
navitimejapan
PRO
22
14k
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
3
260
安全で使いやすいCarPlayアプリの 魅せ方:HIGと実例から学ぶ
navitimejapan
PRO
1
88
見えないユーザの声はログに埋もれている! ~ログから具体的なユーザの体験を数値化した事例紹介~
navitimejapan
PRO
6
2.3k
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
1.3k
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
220
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
3.2k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.2k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
7
5.2k
Other Decks in Technology
See All in Technology
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
1
350
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
The Role of Developer Relations in AI Product Success.
giftojabu1
0
130
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
110
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
610
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
370
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
230
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
Featured
See All Featured
The Language of Interfaces
destraynor
154
24k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
890
How to Think Like a Performance Engineer
csswizardry
20
1.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Scaling GitHub
holman
458
140k
Transcript
組合せ爆発する経路
None
None
None
None
None
なぜ経路探索が 組合せ爆発するのか
None
None
どういうこと?
経路探索の要素技術
多様なコスト要因に対して重み付けし それぞれの条件で最適な経路を算出 コスト計算
道路NWデータ 1リンク 全国で2,700万リンク
探索範囲が広がるほど 処理時間が爆発的に増加
現状の対策
中長距離での間引き
間引きを行うことで品質は劣化する しかし、間引かないとレスポンスタイムが悪化
None
今後やりたいことを考えると 組合せ爆発問題の解決は必須
GPU版経路探索エンジン開発への挑 戦
経路探索処理の特徴 • 要素数が多い • リンク数は全国で2700万リンク • 処理の粒度が大きい • 複数の要因から成るリンクのコスト計算 •
リンクを拡散するか、しないかの条件判断 • 動的な交通情報、規制情報などの考慮 • ネットワークデータへランダムアクセス
経路探索処理の特徴 • 要素数が多い • リンク数は全国で2700万リンク • 処理の粒度が大きい • 複数の要因から成るリンクのコスト計算 •
リンクを拡散するか、しないかの条件判断 • 動的な交通情報、規制情報などの考慮 • ネットワークデータへランダムアクセス
主にやったこと • 探索エンジンを一からフルスクラッチ • CUDAを利用するため • 条件分岐やメモリランダムアクセスはある程度許容する • 減らせる条件分岐は配列アクセスに変換する •
メモリ転送は極力減らす • ホスト⇔デバイス間のメモリ転送はかなり遅いため 詳細は省きます、 気になる方はのちほどお声がけください!
10 100 1000 10000 10 100 1000 時間比率 距離[km] 距離と探索時間の比率
GPU Kepler GPU Volta CPU CPU 階層1のみ 実行速度の最新状況
ポスターアワードの受賞 周囲はほとんどがAI関連。 アンチパターンにあえて 挑んだことで、他にない 独自性を示すことができた
次にやること
更なる高速化 A*コストあり iteration: 200 A*コストなし • 並列探索時のコストにA*コストを付加
既存サーバ GPUサーバ ①リクエスト解釈 ②GPUに探索リクエスト ③GPU経路探索 ④探索結果返却 ⑤レスポンス返却 稼働中のシステムへの統合 gRPCで既存サーバと接 続
機能キャッチアップ 多対多選 年度内S-in
さらに未来の話
None
究極のパーソナライズへ
THANKS!