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
配送計画問題入門3
Search
NearMeの技術発表資料です
May 12, 2023
Programming
0
86
配送計画問題入門3
NearMeの技術発表資料です
May 12, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
GTFSのデータを Streamlitで可視化してみた
nearme_tech
0
32
Offset / Cursor Paginationについて
nearme_tech
1
24
⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について
nearme_tech
23
15k
VRPを深層強化学習で解く
nearme_tech
0
63
Let’s go monorepo - intro to Nx.dev
nearme_tech
0
18
Dynamic Vehicle Routing のシミュレーションを Streamlitで作ってみた
nearme_tech
0
61
ログ監視ツールについて調べてみた
nearme_tech
0
55
(インターン生が大学院で行なっている)研究紹介
nearme_tech
0
47
拡散モデルの概要 −§2. スコアベースモデルについて−
nearme_tech
0
60
Other Decks in Programming
See All in Programming
Java 22 Overview
kishida
1
180
Tailwind CSSを本気でカスタマイズする方法
fsubal
13
5.1k
StoreKit2によるiOSのアプリ内課金のリニューアル
kangnux
0
110
"config" ってなんだ? / What is "config"?
okashoi
0
240
Zero Waste, Radical Magic, and Italian Graft – Quarkus Efficiency Secrets
hollycummins
0
230
ONE WEDGE_company_guide
1wedge_one
0
450
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
200
雑に思考を整理する技術と効能
konifar
58
29k
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
190
Ruby GitHub Packages
bkuhlmann
0
630
Ruby Function Composition
bkuhlmann
1
330
Designing for tomorrow's programming workflows
honnibal
PRO
2
120
Featured
See All Featured
Facilitating Awesome Meetings
lara
42
5.6k
A better future with KSS
kneath
231
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Web Components: a chance to create the future
zenorocha
305
41k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
Designing Experiences People Love
moore
136
23k
Product Roadmaps are Hard
iamctodd
44
9.7k
Ruby is Unlike a Banana
tanoku
96
10k
Creatively Recalculating Your Daily Design Routine
revolveconf
210
11k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Thoughts on Productivity
jonyablonski
58
3.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
Transcript
0 配送計画問題入門3 2023-05-11 第42回NearMe技術勉強会 Yuta Okamoto
1 目次 1. はじめに 2. 前回までの内容・今回のゴール 3. 前提知識 4. 配送計画問題を解いてみる
5. 次回予告
2 1.はじめに • アイスブレイク ◦ 最初に私が誰かにペンを渡します. ◦ 渡された人は,24時間以内に起きた良いこと・新しいことを共 有してください👍 ◦
話終わったら誰か選び,その人にペンを渡してください.
3 2.前回までの内容・今回のゴール • 前回までの内容 ◦ 配送計画問題とは ◦ いろんな種類がある • 今回のゴール
◦ グラフの工夫でさまざまな条件を表現できること どの車両が,何時に,どの順番で,どの顧客を訪問するか決め る問題 VRP CVRP VRPTW VRPPD etc.
4 • グラフ理論 ◦ ノード ◦ エッジ • 最適化 ◦
1次式 ◦ 線形計画 3.前提知識 Wikipedia: The Free Encyclopedia. “Vehicle Routing Problem”. 2023-03-10. https://en.wikipedia.org/wiki/Vehicle_routing_problem(参照 2023-03-22) 目的関数も制約式も全て一次式 の最適化問題
5 • VRP : 単純な距離最小化 4.配送計画問題を解いてみる • 任意のノード間にエッジがあるとは 限らない •
エッジには重みがついている • エッジの重みが変われば最適解も 変わる 2 5 10 10 10 10 6 4 3 4 2 ① ② ③ ④ ⑤ ⓪
6 • VRP : 単純な距離最小化 4.配送計画問題を解いてみる [ [0, 10, 10,
10, 10, 10], [10, 0, 2, 4, ?, 6], [10, 2, 0, ?, 5, ?], [10, 4, ?, 0, 2, 4], [10, ?, 5, 2, 0, 3], [ ?, 6, ?, 4, 3, ?] ] 2 5 10 10 10 10 6 4 3 4 2 ① ② ③ ④ ⑤ ⓪
7 4.配送計画問題を解いてみる - OR-ToolsでVRPを解く 1. 入力データ(定数)の生成
8 4.配送計画問題を解いてみる - VRPを解く 2. ノードとソルバ内のインデックスを対応づける 3. RoutingModelインスタンス生成
9 4.配送計画問題を解いてみる - VRPを解く 4. 枝の重みを設定
10 4.配送計画問題を解いてみる - VRPを解く 5. 距離のDimensionを生成 ※Dimension : 蓄積される値をトラッキングするためのオブジェクト
11 4.配送計画問題を解いてみる - VRPを解く 6. 探索のアルゴリズムを選択 7. 求解
12 4.配送計画問題を解いてみる - VRPを解く 8. 解を表示
13 • CVRP : キャパを考えながら距離最小化 4.配送計画問題を解いてみる 1 3 2 1
2 2 5 10 10 10 10 6 4 3 4 2 ① ② ③ ④ ⑤ ⓪ • ノードに重みがある
14 4.次回予告 • GurobiでVRPを解いてみようかと思います.
15 出典 • Google LLC. “Vehicle Routing Problem”. Google OR-Tools.
2023-01-16 UTC. https://developers.google.com/optimization/routing/vrp#complete_programs, (参照 2023-05-11)
16 Thank you