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
44
組合せ爆発する経路
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
23
15k
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
3
800
安全で使いやすいCarPlayアプリの 魅せ方:HIGと実例から学ぶ
navitimejapan
PRO
1
240
見えないユーザの声はログに埋もれている! ~ログから具体的なユーザの体験を数値化した事例紹介~
navitimejapan
PRO
6
3.1k
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
1.6k
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
370
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
3.6k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.3k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
7
5.7k
Other Decks in Technology
See All in Technology
ラスベガスの歩き方 2025年版(re:Invent 事前勉強会)
junjikoide
0
540
AWSが好きすぎて、41歳でエンジニアになり、AAIを経由してAWSパートナー企業に入った話
yama3133
1
180
仕様駆動開発を実現する上流工程におけるAIエージェント活用
sergicalsix
6
3k
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
3
5.2k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
390
東京大学「Agile-X」のFPGA AIデザインハッカソンを制したソニーのAI最適化
sony
0
150
DSPy入門
tomehirata
3
480
Retrospectiveを振り返ろう
nakasho
0
130
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
220
Dify on AWS 環境構築手順
yosse95ai
0
160
様々なファイルシステム
sat
PRO
0
260
20251024_TROCCO/COMETAアップデート紹介といくつかデモもやります!_#p_UG 東京:データ活用が進む組織の作り方
soysoysoyb
0
130
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
How STYLIGHT went responsive
nonsquared
100
5.9k
Become a Pro
speakerdeck
PRO
29
5.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
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!