2023年 12月 8日
テクノロジー
当社ではPiomatix LBS APIとして、配車・配送ルートの最適化を実現するAPIを提供しています。
Piomatix LBS API
そのAPIの中の「巡回最適化API」を実際に活用して、いくつかのユースケースごとに社内便のルートを考えてみました。
巡回最適化API
複数地点(最大200地点)を経由するルートや時間を最適化し、効率的な巡回順序を算出します。
詳しくはこちら
なお、この記事ではAPIのコールの実装方法については触れません。
実装例については、今回使用するデモツールの実装例を示した記事がありますのであわせてご参照ください。
クラウドエンジニアがFlutterでルート探索APIをコールし、結果を表示してみた
西見 武
パイオニアに2019年に新卒入社、社歴5年目。
データエンジニア兼クラウドアーキテクトとして、ナビのルーティングに使用される「渋滞情報」の作成及び評価を担当しています。
趣味は週5回ほどの筋トレと、たんぱく質を大量に摂取可能な料理を作ること。
この記事ではパイオニアにおける社内便を、「複数地点の配送ルート」を考える素材として取り上げていきます。
ここでは社内便を「毎日同じルートで会社の拠点を巡回して、書類や物品を他の拠点に運ぶ社内インフラ」と定義します。
ペーパーレス化が進む現代であっても、重要書類の紙媒体での授受は避けられないケースも多く、複数の拠点をもつ企業にとっては、企業運営に欠かせない重要な仕組みです。
3拠点以上の拠点間の橋渡しを行う社内便においては場合に2つの問題が生じます。
本記事ではこの2つの問題に対し、「巡回最適化API」を用いて最適な答えを発見します。
この社内便のルートを最適化することで、以下のような効果があると考えられます。
東京近郊の5つの主要拠点間で荷物や書類を運ぶことを目的とし、平日は毎日稼働しています。
© OpenStreetMap contributors
S/G : Start/Goalの意
パイオニアの社内便を最適化する上で以下のような制約条件があります。
社内向けのデモツールを活用して、いくつかのユースケース別に最適なルートを引いてみました。
※デモツールに関する記事
クラウドエンジニアがFlutterでルート探索APIをコールし、結果を表示してみた
社内便では、最大積載量4.5t ~ 6.5tの中型の貨物車両を用いるものと仮定し、ルート巡回順を決定するための以下の条件を変化させてみます。
※入出力のパラメータ一覧
Piomatix LBS API 主な機能仕様
固定の条件
変更するルート探索の条件
※運転コスト:信号のない道路の右折回数など、運転上精神的に負荷のかかる行動を「運転コスト(運転による負荷)」と捉えこれらが少なくなるようなルートを提案するパイオニア独自のアルゴリズム
この場合は、高速や有料道路を通ってでも「なるはや」で巡回することを目指します。
企業の特性上、迅速な授受が要求される場合や、1日に2回以上の巡回が求められる場合は、まずこの条件で巡回順及び巡回ルートを検討します。
変更するルート探索の条件
巡回順は次のようになりました。
本社 → 茗荷谷 → 池袋 → 川越 → 代田橋 → 本社
移動距離の合計は115.2km、運転時間の合計は164.3分(2時間44分)となりました。
ドライバーの休憩時間や荷下ろしを考えると、1日に2周するには少し長いルートですが、ドライバーを2人体制にするなどの施策を行えば、1日に2周できる可能性がありそうですね。
このルートでは時間を短縮するために池袋拠点から川越拠点に向かう間に、混雑しやすい都内を早急に抜けるために高速道路を使用しているようですね。
この場合は、できるだけ輸送コストを安く済ませることを目標にします。
そのため、多少時間がかかったとしても高速や有料道路は使いませんし、燃料費などの輸送コストは走行距離に比例すると仮定し、移動距離が最短となることを条件として設定します。
変更するルート探索の条件
巡回順は次のようになりました。
本社 → 茗荷谷 → 池袋 → 川越 → 代田橋 → 本社
移動距離は93.87km、運転時間は216.1分(3時間36分)となりました。
巡回順はユースケース1と同様でしたが、高速道路を利用しないため、川越拠点を経由する時は、行きも帰りも川越街道を中心としたルートなりました。
LBS-APIでは、ルート上における信号のない道路での右折や狭い道路を運転する距離など精神的に負荷のかかる行動の回数を元に「運転コスト」と呼ばれるパイオニア独自の指標を算出しています。このコストができるだけ少ないルートを提案することが可能です。
交通量が多く信号機がない
交差点の右折を回避
鋭角に曲がらなければ
ならない場所を回避
道幅や進行方向の交差路
角度・幅からルート選択
複数地点の最適な
巡回順序を算出
ユースケース2のように高速道路を使わない場合、ドライバーが一般道通行に伴う多くのストレスにさらされ、交通事故の要因となることが考えられます。
変更するルート探索の条件
結果、巡回順はユースケース1、ユースケース2と同じ結果になりました。
本社 → 茗荷谷 → 池袋 → 川越 → 代田橋 → 本社
移動距離はちょうど100.0km、運転時間は211.6分(3時間31分)となりました。
通るルートをユースケース2と比較すると、池袋拠点から川越拠点を通る際に、川越街道ではなく、新大宮バイパスや富士見川越バイパスを採用しています。
この変更により実際に運転しやすい道路を通っているか確認してみましょう。
ピンポイントかつ定性的な比較にはなってしまいますが、川越街道沿いにある「イオン大井店」付近と、川越富士見バイパス沿いにある「ららぽーと富士見」前の付近の道路の様子をGoogle ストリートビューで確認してみます。
川越街道 イオン大井店付近のストリートビュー
川越富士見バイパス ららぽーと富士見前のストリートビュー
中央分離帯がない片側一社線の川越街道と比較し、川越富士見バイパスは中央分離帯のある片側2車線の道路になっています。また、後者の方が交差点や沿線の施設が少なく、通りやすい道という印象を受けます。川越街道も都内に近づくにつれ、片側2車線の区間がありますが、中央分離帯がない区間がおおく、やはり運転の快適さは川越富士見バイパスに軍配が上がると思います。代田橋拠点を経由するために川越街道を通る必要がありますが、川越拠点行きでの運転ストレスを緩和することで、代田橋拠点に向かう際への余力を残すことができそうですね。
この記事ではいくつかのユースケースに合わせて、パイオニアの社内便の巡回ルートを考えてみました。
巡回順は以下の順が最適と考えられます。
本社 → 茗荷谷 → 池袋 → 川越 → 代田橋 → 本社
一方経由するルートについては時間、費用、ドライバーの負担のどれに重きを置くかで結果が異なりました。各社でどの条件を重視するかを整理した上でなど適切なルートを引くことが重要です。パイオニアのLBS APIでは、時間や料金、ドライバーの負担などを考慮して最適な巡回順とそのルートを提案することが可能です。
今回は社内便を題材に取り上げましたが、定期的に同じルートを巡回するという観点で次のようなケースでも転用可能だと考えています。
もしLBS APIに興味をお持ちいただけましたら、ページ下部の「お問い合わせ」フォームよりお気軽にお問い合わせください。