Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
NAVITIMEの経路はこうして作られる
Search
NAVITIME JAPAN
PRO
February 28, 2018
Technology
0
280
NAVITIMEの経路はこうして作られる
2018/02/28に開催された「ITS Tech Study #01」で発表した資料です。
NAVITIME JAPAN
PRO
February 28, 2018
Tweet
Share
More Decks by NAVITIME JAPAN
See All by NAVITIME JAPAN
つよつよリーダーが 抜けたらどうする? 〜ナビタイムのAgile⽀援組織の変遷〜
navitimejapan
PRO
23
16k
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
3
870
安全で使いやすいCarPlayアプリの 魅せ方:HIGと実例から学ぶ
navitimejapan
PRO
1
250
見えないユーザの声はログに埋もれている! ~ログから具体的なユーザの体験を数値化した事例紹介~
navitimejapan
PRO
6
3.2k
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
1.7k
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
380
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
3.7k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.4k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
8
5.7k
Other Decks in Technology
See All in Technology
Fashion×AI「似合う」を届けるためのWEARのAI戦略
zozotech
PRO
2
810
Power of Kiro : あなたの㌔はパワステ搭載ですか?
r3_yamauchi
PRO
0
170
[CMU-DB-2025FALL] Apache Fluss - A Streaming Storage for Real-Time Lakehouse
jark
0
120
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
1.3k
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
540
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
230
LLM-Readyなデータ基盤を高速に構築するためのアジャイルデータモデリングの実例
kashira
0
260
初めてのDatabricks AI/BI Genie
taka_aki
0
200
5分で知るMicrosoft Ignite
taiponrock
PRO
0
390
1人1サービス開発しているチームでのClaudeCodeの使い方
noayaoshiro
1
280
regrowth_tokyo_2025_securityagent
hiashisan
0
250
因果AIへの招待
sshimizu2006
0
980
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The World Runs on Bad Software
bkeepers
PRO
72
12k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Statistics for Hackers
jakevdp
799
230k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Designing Experiences People Love
moore
143
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Transcript
NAVITIMEの経路はこうして作られる ~4100万人の移動を導く経路探索の流儀~ 株式会社ナビタイムジャパン ルートグループ 福士 達央 2018/2/28
アジェンダ 2 自己紹介・会社紹介 経路探索エンジン紹介 種類 要素
コストモデル 経路探索開発のポイント 経路品質 性能 評価方法 今後
自己紹介 3
自己紹介 4 福士 達央(ふくし たつおう) 経歴 2008
ナビタイムジャパン新卒1期生として入社、現在10年目 2008-11 海外地図データ開発 2011-17 道路系経路探索開発 2015-17 横断PJ PM 地図リプレイス/台湾トータルナビ対応 2017- 道路系経路探索 PM スキル C/C++ 地図データ アルゴリズム リバースエンジニアリング プロジェクトマネジメント 野球部 港区2017秋大会優勝
ナビタイムジャパン紹介 5
ナビタイムジャパン紹介 6 基本情報 社員数: 400名 (2018年2月時点) 平均年齢:
31.2歳 (2017年9月時点) エンジニア:80% (2017年9月時点) 事業内容 コンシューマ系(公式・協業) ユーザ数 延べ月間UU数:4100万人 (2017年12月末時点) 有料会員数:480万人 (2017年12月末時点) 法人系
ナビタイムジャパン紹介 7 会社の成り立ち 社長・副社長が経路探索エンジンの研究者 1998年に世界初のトータルナビゲーションが完成 2000/03/01
ナビタイムジャパン設立 経営理念 「経路探索エンジンの技術で世界の産業に奉仕する」 ナビタイムにとっての経路探索 経路探索の技術を軸に事業を展開 コア技術である経路探索には強いこだわり 本日はその経路探索の開発の裏側を こっそりお教えします
経路探索エンジン紹介 8
経路探索エンジン紹介 ~種類~ 9 公共交通 道路
経路探索エンジン紹介 ~種類~ 10 公共交通 道路 本日は こちら
経路探索エンジン紹介 ~要素~ 11 経路探索 アルゴリズム NWデータから 最適経路を 高速に算出する技術 コスト 計算
どの道路を 通るのが良いか 価値を決める技術 道路 NWデータ 様々な属性を含む リンク・ノードで モデル化した地図 ・理論的 ・情報工学 ・グラフ理論 ・経験的 ・交通工学 ・心理学 リンク/ノード単位で コスト取得 どのような道路か 属性を取得 リンク・ノードの 接続関係を取得 ・地図データコンバート ・交通情報生成
経路探索エンジン紹介 ~一般化費用コストモデル~ 12 時間優先探索 距離優先探索 時間 金銭 煩雑さ コスト 時間
距離 金銭 煩雑さ コスト 多様なコスト要因に対して重みづけが可能 時間 金銭 煩雑さ ・ ・ 時間係数 金銭係数 煩雑さ係数 ・ ・ =コスト コスト係数 (主にポリシー) ベクトル 内積 コスト要因 (主に事実)
経路探索開発のポイント ~経路品質~ 13
14 多様なユーザに満足してもらうために
15 多様なユーザに満足してもらうために 1. 1経路の最適性向上 1経路でできるだけ多くのユーザを満足させる 2. 多様な別経路の提案 満足できないユーザに対して、異なる性質の経路を提供
最適な1経路 別経路 別経路 ユーザが満足できていない部分を両方のアプローチで埋めていく
16 改善サイクル ルートに不満 ルート指摘 送信 調査 分類・集計 改善対応 ナビ反映 不満解消
17 改善サイクルのポイント 1. ルート指摘 ルート専用の指摘の口が ある 直近のルートのリクエス トも合わせて送信
詳細な調査が可能に!
18 改善サイクルのポイント 2. ルート改善専用のチームが存在 調査・分類・集計を集中して実施 中央分離帯データ 投入後 指摘が0件に! 例)中央分離帯未考慮による指摘の集計
19 改善サイクルの今後 3. ユーザとのコミュニケーションの活性化 さらなるユーザ満足度向上へ ルートに不満 ルート指摘 送信 調査 ナビ反映
不満解消 分類・集計 改善対応 ユーザとの やり取り コミュニティ 改善の通知
20 所要時間精度 経路品質の指標 所要時間精度: 30分の経路に対して誤差±5分以内の経路が90% 所要時間=標準速度と交通情報による速度 から算出
順調時はさほど難しくない 混雑・渋滞時に速度を正しく捉える・予測できることが重要 交通情報データ情報源・種類と対応状況 VICSとプローブを組み合わせて利用 リアルタイム 短期予測 長期予測 VICS / プローブ ◦ ◦ ◦
21 所要時間精度 Re:dashを使って日々の精度を集計 集計結果を分析し、改善に活用
22 経路品質改善の直近の取り組み
23 経路品質改善の直近の取り組み NT-FILTER
24 経路品質改善の直近の取り組み NT-FILTER
25 経路品質改善の直近の取り組み NT-FILTER
26 経路品質改善の直近の取り組み NT-FILTER 課題 ノイズが多い 運用コスト高い
改善 AIを利用したノイズ除去実施
27 機能追加の直近の取り組み 事故リスク地点回避(阪神高速様と共同) 時間・距離・料金だけでなく、安心・安全のニーズが高まる 各道路の事故リスクを算出し、リスクの大きさに応じてコスト を付与して回避
事故リスク算出方法 過去の事故実績のある道路を状況に応じて分類 事故リスク算出用のモデル式を推定
28 機能追加の直近の取り組み 事故リスク地点回避(阪神高速様と共同) 経路に反映
29 機能追加の直近の取り組み 事故リスク地点回避(阪神高速様と共同) 難しいポイント 遠回りになりすぎない範囲での経路チューニング 基本、一般道と比べて高速は事故が少ない
単純に適用すると高速使いまくる 外部データ利用 事故リスクの推定(外部)とナビタイムの経路探索とで、扱う NWデータが異なる » 形状や属性のマッピング作業が必要 推奨 リスク考慮 25.00% 30.00% 35.00% 40.00% 45.00% 有料 一般幹線 一般 推奨 チューニング 単純 バランスは維持 経路割合
経路探索開発のポイント ~性能~ 30
31 オリンピックを見て実感
32 正確さと速さの両立は難しい
33 理論上最適経路を導くアルゴリズムは古くから存在 日本の道路NW 数百万~数千万単位のノード・リンクで構成 日時規制やリアルタイム交通情報などのリアルタイム性を適用
サービスの要求に耐えられない 経路品質とパフォーマンスはトレードオフ
34 経路品質を極力落とさずパフォーマンス向上を実現 アルゴリズム ダイクストラ・A*・階層化 など 開発言語:C++
データ形式:独自バイナリ形式 技術トレンド的にはやや古め 性能面の制御がしやすい 近年のクラウド化や並列処理技術の進歩 現状の経路品質とパフォーマンスのバランスに変化 経路品質向上にも寄与 経路品質とパフォーマンスはトレードオフ
35 事前処理による経路探索の高速化 経路探索処理の並列化 性能改善の取り組み
経路探索開発のポイント ~評価方法~ 36
37 一般的な単体テスト プロダクト品質を担保 経路探索エンジン プロダクト品質に加えて 経路品質
パフォーマンス の評価も同時に実施する必要がある コードの単体テストのみでは不足
38 チューニングや機能追加するたびに、全国車を走らせて フィールドテスト! ができればいいのだが... 評価作業 大変! コストかかる 時間かかる! 改善サイクルまわらない
39 実際のユーザの経路探索リクエストを利用 ランダムに十分な量をサンプリング 実際のユーザの分布と同様のテストケース 改修前後のデータ・エンジンで、それぞれ経路探索を実行
結果比較 評価作業 都心部:多 地方部:少
40 経路品質 経路探索エラー発生有無 経路サマリー数値比較・統計的評価 時間
距離 など ビューワで経路を引いてみて目視確認 求められる品質に応じて、確認する件数を決定 評価作業 前 後 差分
41 パフォーマンス 実行時間の比較・統計的評価 差分の平均・最大 割合だけでなく絶対値も
優劣の程度から判断 評価作業工数 小規模な改善ならば 経路チューニングと合わせて数日~1週間程度で実現 自動化など改善の余地がまだある 評価作業
今後 42
今後 43 経路探索ログや移動ログを活用した経路探索 交通コンサルの分析結果を経路にも反映 渋滞予測強化