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
120
配送計画問題入門3
NearMeの技術発表資料です
PRO
May 12, 2023
Tweet
Share
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
希望休勤務を考慮したシフト作成
nearme_tech
PRO
0
20
Hub Labeling による高速経路探索
nearme_tech
PRO
0
54
Build an AI agent with Mastra
nearme_tech
PRO
0
68
Rustで強化学習アルゴリズムを実装する vol3
nearme_tech
PRO
0
33
Webアプリケーションにおけるクラスの設計再入門
nearme_tech
PRO
1
73
AIエージェント for 予約フォーム
nearme_tech
PRO
2
140
ULID生成速度を40倍にしたった
nearme_tech
PRO
2
51
Amazon AuroraとMongoDBの アーキテクチャを比較してみたら 結構違った件について
nearme_tech
PRO
0
24
GitHub Custom Actionのレシピ
nearme_tech
PRO
0
16
Other Decks in Programming
See All in Programming
第9回 情シス転職ミートアップ 株式会社IVRy(アイブリー)の紹介
ivry_presentationmaterials
1
240
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
330
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
460
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
220
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
310
WindowInsetsだってテストしたい
ryunen344
1
200
ふつうの技術スタックでアート作品を作ってみる
akira888
0
160
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
230
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
140
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
270
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
540
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
Featured
See All Featured
Docker and Python
trallard
44
3.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
For a Future-Friendly Web
brad_frost
179
9.8k
Designing for humans not robots
tammielis
253
25k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Building Adaptive Systems
keathley
43
2.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Six Lessons from altMBA
skipperchong
28
3.9k
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