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の技術発表資料です
PRO
May 12, 2023
Programming
0
110
配送計画問題入門3
NearMeの技術発表資料です
PRO
May 12, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
ESLintをもっと有効活用しよう
nearme_tech
PRO
0
6
リファクタリングのための第一歩
nearme_tech
PRO
0
29
ガウス過程回帰とベイズ最適化
nearme_tech
PRO
1
75
確率的プログラミング入門
nearme_tech
PRO
2
69
Observability and OpenTelemetry
nearme_tech
PRO
2
35
観察研究における因果推論
nearme_tech
PRO
1
100
React
nearme_tech
PRO
2
41
Architecture Decision Record (ADR)
nearme_tech
PRO
1
860
遺伝的アルゴリズムを実装する
nearme_tech
PRO
1
62
Other Decks in Programming
See All in Programming
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
ドメインイベント増えすぎ問題
h0r15h0
2
420
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
340
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
2
130
Online-Dokumentation, die hilft: Strukturen, Prozesse, Tools
ahus1
0
100
create_tableをしただけなのに〜囚われのuuid編〜
daisukeshinoku
0
280
php-conference-japan-2024
tasuku43
0
360
Amazon S3 NYJavaSIG 2024-12-12
sullis
0
110
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
230
StarlingMonkeyを触ってみた話 - 2024冬
syumai
3
280
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
260
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
570
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
Designing for humans not robots
tammielis
250
25k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Automating Front-end Workflow
addyosmani
1366
200k
Gamification - CAS2011
davidbonilla
80
5.1k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Producing Creativity
orderedlist
PRO
342
39k
How GitHub (no longer) Works
holman
311
140k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
A Philosophy of Restraint
colly
203
16k
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