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
29
組合せ爆発する経路
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
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
740
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
76
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
2.8k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.1k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
6
4.6k
こうしてふりかえりは終わってしまった / A Demise of a retrospective
navitimejapan
PRO
42
26k
もーひとつの時間がない症候群 / Yet Another SOT Syndrome
navitimejapan
PRO
1
2k
シーズン2〜スクラムチームのバトンを渡す〜 / Season 2 -pass the button of a scrum team-
navitimejapan
PRO
2
2.8k
チームのパフォーマンスを引き出す、ワクワクするプロダクトゴール、OKR / Waku-waku Product Goal and OKR
navitimejapan
PRO
17
17k
Other Decks in Technology
See All in Technology
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
20240416_devopsdaystokyo
kzkmaeda
1
220
ユーザーストーリーのレビューを自動化したみたの
bun913
1
410
Postman v10リリース後を振り返る
nagix
0
170
Terraformあれやこれ/terraform-this-and-that
emiki
8
1.3k
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
190
GraphQL 成熟度モデルの紹介と、プロダクトに当てはめた事例 / GraphQL maturity model
mh4gf
7
1.3k
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
190
オーナーシップを持つ領域を明確にする
konifar
13
3.1k
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
290
20240418_Google ColabにLLMが搭載されたようなのでPython x データ分析の勉強方法を考えてみる
doradora09
0
120
Featured
See All Featured
Fireside Chat
paigeccino
21
2.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
Making the Leap to Tech Lead
cromwellryan
124
8.5k
In The Pink: A Labor of Love
frogandcode
138
21k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
The Cost Of JavaScript in 2023
addyosmani
16
3.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Into the Great Unknown - MozCon
thekraken
10
990
Build The Right Thing And Hit Your Dates
maggiecrowley
24
2k
Docker and Python
trallard
34
2.7k
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!