(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023039451
(43)【公開日】2023-03-22
(54)【発明の名称】配送管理システム、配送管理方法およびプログラム
(51)【国際特許分類】
G06Q 10/0834 20230101AFI20230314BHJP
【FI】
G06Q10/08 308
【審査請求】有
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2021136416
(22)【出願日】2021-08-24
(11)【特許番号】
(45)【特許公報発行日】2023-03-13
(71)【出願人】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】リ エンエン
(72)【発明者】
【氏名】ポリヤプラム ヴィネーラジュ
(72)【発明者】
【氏名】ミード カイル
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049AA16
(57)【要約】
【課題】荷物の配送者への割り当てを改良することをより容易にすること。
【解決手段】配送管理システムは、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成し、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる。
【選択図】
図2
【特許請求の範囲】
【請求項1】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段と、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段と、
を含む配送管理システム。
【請求項2】
請求項1に記載の配送管理システムにおいて、
前記クラスタリング処理は、それぞれ1つの配送者により配送される複数の配送先を含む複数の過去の配送先リストの代表位置を取得し、前記取得された代表位置に基づいて前記複数の過去の配送先リストを予備クラスタに分類するクラスタリングを実行し、前記複数の過去の配送先リストが分類された前記予備クラスタと、前記複数の配送先リストに含まれる前記複数の配送先とに基づいて、前記学習データに含まれる複数の配送クラスタに属する配送先を決定する、
配送管理システム。
【請求項3】
請求項1または2に記載の配送管理システムにおいて、
前記学習手段は、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれに含まれる配送先の数を算出し、
前記予想された配送クラスタについて前記算出された配送先の数と、配送先の数の基準値とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
配送管理システム。
【請求項4】
請求項1から3のいずれかに記載の配送管理システムにおいて、
前記学習手段は、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれの代表位置を算出し、
前記予想された配送クラスタについて前記算出された代表位置と、前記学習データにおける配送クラスタの代表位置とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
配送管理システム。
【請求項5】
請求項1から4のいずれかに記載の配送管理システムにおいて、
前記学習手段により学習された機械学習モデルに配送先の配送先情報を入力し、前記機械学習モデルから出力された配送クラスタを示す情報に基づいて、前記入力された配送先が所属する配送クラスタを決定する配送クラスタ決定手段をさらに含む、
配送管理システム。
【請求項6】
請求項5に記載の配送管理システムにおいて、
前記機械学習モデルは、前記配送先の配送先情報が入力されると、複数の配送クラスタのそれぞれについて前記入力された配送先が属する確率を示す値を出力し、
前記配送クラスタ決定手段は、前記確率を示す値に基づいて、前記入力された配送先が所属する配送クラスタを決定する、
配送管理システム。
【請求項7】
請求項6に記載の配送管理システムにおいて、
前記配送クラスタ決定手段は、前記決定された配送先が所属する配送クラスタのいずれかが、予め定められた条件を満たさない場合に、前記確率を示す値に基づいて、前記条件を満たさない配送クラスタに所属する配送先を、他の配送クラスタに所属するように移動させる、
配送管理システム。
【請求項8】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成するステップと、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させるステップと、
を含む配送管理方法。
【請求項9】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段、および、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は配送処理システム、配送管理方法およびプログラムに関する。
【背景技術】
【0002】
多数の配送先へ荷物を配送するシステムにおいては、物流拠点に荷物が集まり、そこから、複数のドライバーのそれぞれに配送する荷物が割り当てられる。
【0003】
特許文献1には、予想配達効率を決定し、複数のドライバーの配達ルートを決定することが開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
配送者ルートを決定する際に、まず荷物を配送者に割り当て、その後、配送者のそれぞれについて割り当てられた荷物を配送するための配送ルートを決定する手法が考えられる。この手法をとる場合、荷物を配送者へ適切に割り当てることが重要となる。
【0006】
荷物の配送者への割り当てに一般的なクラスタリング手法を用いる場合には、その割り当てを改良することが難しい。より具体的には、例えば配送者に割り当てられる配送先の数の偏りを減らす、移動ルートを考慮するといった細かな要件に対応させることが難しい。
【0007】
本発明は上記課題を鑑みてなされたものであって、その目的は、荷物の配送者への割り当てを改良することをより容易にする技術を提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明にかかる配送管理システムは、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段と、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段と、を含む。
【0009】
また、本発明にかかる配送管理方法は、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成するステップと、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させるステップと、を含む。
【0010】
また、本発明にかかるプログラムは、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段、および、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段、としてコンピュータを機能させる。
【0011】
本発明の一形態では、前記クラスタリング処理は、それぞれ1つの配送者により配送される複数の配送先を含む複数の過去の配送先リストの代表位置を取得し、前記取得された代表位置に基づいて前記複数の過去の配送先リストを予備クラスタに分類するクラスタリングを実行し、前記複数の過去の配送先リストが分類された前記予備クラスタと、前記複数の配送先リストに含まれる前記複数の配送先とに基づいて、前記学習データに含まれる複数の配送クラスタに属する配送先を決定してよい。
【0012】
本発明の一形態では、前記学習手段は、前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれに含まれる配送先の数を算出し、前記予想された配送クラスタについて前記算出された配送先の数と、配送先の数の基準値とに基づいて損失関数を決定し、前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させてもよい。
【0013】
本発明の一形態では、前記学習手段は、前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれの代表位置を算出し、前記予想された配送クラスタについて前記算出された代表位置と、前記学習データにおける配送クラスタの代表位置とに基づいて損失関数を決定し、前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させてもよい。
【0014】
本発明の一形態では、配送管理システムは、前記学習手段により学習された機械学習モデルに配送先の配送先情報を入力し、前記機械学習モデルから出力された配送クラスタを示す情報に基づいて、前記入力された配送先が所属する配送クラスタを決定する配送クラスタ決定手段をさらに含んでよい。
【0015】
本発明の一形態では、前記機械学習モデルは、前記配送先の配送先情報が入力されると、複数の配送クラスタのそれぞれについて前記入力された配送先が属する確率を示す値を出力し、前記配送クラスタ決定手段は、前記確率を示す値に基づいて、前記入力された配送先が所属する配送クラスタを決定してもよい。
【0016】
本発明の一形態では、前記配送クラスタ決定手段は、前記決定された配送先が所属する配送クラスタのいずれかが、予め定められた条件を満たさない場合に、前記確率を示す値に基づいて、前記条件を満たさない配送クラスタに所属する配送先を、他の配送クラスタに所属するように移動させてもよい。
【発明の効果】
【0017】
本発明により、荷物の配送者への割り当てをより容易に改良することができる。
【図面の簡単な説明】
【0018】
【
図1】本発明の実施形態にかかる配送管理システムのハードウェア構成の一例を示す図である。
【
図2】配送管理システムが実現する機能を示すブロック図である。
【
図3】学習データ生成部の処理の一例を示すフロー図である。
【
図4】配送先、配送先リスト、配送クラスタの関係を模式的に示す図である。
【
図5】モデル学習部の処理の一例を示すフロー図である。
【
図6】配送先取得部、配送クラスタ決定部およびルート決定部の処理の一例を示すフロー図である。
【発明を実施するための形態】
【0019】
以下では、本発明の実施形態を図面に基づいて説明する。同じ符号を付された構成に対しては、重複する説明を省略する。本実施形態では、配送先を配送クラスタへ分類する機械学習モデルを用いて、配送先へ届けられる荷物を担当する配送者を決定するシステムについて説明する。
【0020】
図1は、本発明の実施形態にかかる配送管理システムの一例を示す図である。配送管理システムは、配送管理装置1を含む。
【0021】
配送管理装置1はプロセッサ11、記憶部12、通信部13、入出力部14を含む。配送管理装置1は、例えばサーバコンピュータである。以下で説明される配送管理装置1の機能は、複数のサーバコンピュータにより実現されてもよい。
【0022】
プロセッサ11は、記憶部12に格納されているプログラムに従って動作する。またプロセッサ11は通信部13、入出力部14を制御する。なお、上記プログラムは、インターネット等を介して提供されるものであってもよいし、フラッシュメモリやDVD-ROM等のコンピュータで読み取り可能な記憶媒体に格納されて提供されるものであってもよい。
【0023】
記憶部12は、RAMおよびフラッシュメモリ等のメモリ素子とハードディスクドライブのような外部記憶装置とによって構成されている。記憶部12は、上記プログラムを格納する。また、記憶部12は、プロセッサ11、通信部13、入出力部14から入力される情報や演算結果を格納する。
【0024】
通信部13は、他の装置と通信する機能を実現するものであり、例えば無線LAN、有線LANを実現する集積回路やアンテナ、通信端子などにより構成されている。通信部13は、プロセッサ11の制御に基づいて、他の装置から受信した情報をプロセッサ11や記憶部12に入力し、他の装置に情報を送信する。
【0025】
入出力部14は、表示出力デバイスをコントロールするビデオコントローラや、入力デバイスからのデータを取得するコントローラなどにより構成される。入力デバイスとしては、キーボード、マウス、タッチパネルなどがある。入出力部14は、プロセッサ11の制御に基づいて、表示出力デバイスに表示データを出力し、入力デバイスをユーザが操作することにより入力されるデータを取得する。表示出力デバイスは例えば外部に接続されるディスプレイ装置である。
【0026】
次に、配送管理システムが提供する機能について説明する。
図2は、配送管理システムが実現する機能を示すブロック図である。配送管理システムは、機能的に、学習データ生成部51、モデル学習部52、機械学習モデル53、配送先取得部55、配送クラスタ決定部56、ルート決定部57を含む。これらの機能は、プロセッサ11によって記憶部12に格納されるプログラムが実行され、通信部13などを制御することにより実現される。
【0027】
学習データ生成部51は、複数の配送先の情報であって過去の配送先の位置を含む情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを、クラスタリング処理により生成する。クラスタリング処理については後述する。配送先の情報は、配送先の位置を示す情報を含む。配送先の位置を示す情報は、配送先の緯度経度、配送拠点からみた角度、配送拠点との距離を含んでよい。また配送先の情報は、配送先の先頭の3桁の郵便番号を含んでよい。
【0028】
また、学習データ生成部51は、さらに、複数の配送クラスタのそれぞれに含まれる配送先の数の平均と、複数の配送クラスタのそれぞれの重心の位置とを、学習のための情報として生成してよい。重心の位置は、配送クラスタを代表する代表位置の一例である。重心の代わりに、例えば、重心に最も近い配送先の位置が用いられてもよい。また配送先の数の平均は、配送クラスタにおける配送先の数の基準値の一例であり、配送先の数の基準値として配送先の数の中央値のような別の値が用いられてもよい。
【0029】
モデル学習部52は、生成された学習データに含まれる複数の配送先の配送先情報を機械学習モデル53に入力する。モデル学習部52は、その入力について機械学習モデル53から出力される予想された配送クラスタを示す情報と学習データに含まれる分類された配送クラスタとに基づいて、機械学習モデル53を学習させる。機械学習モデル53は、いわゆるニューラルネットワークなどの公知の機械学習のアルゴリズムにより動作し、配送先が入力されると、その配送先が複数の配送クラスタのそれぞれに属する確率(所属確率)を示す値を出力する。機械学習モデル53は、ランダムフォレスト、サポートベクタマシン(SVM)などの機械学習が実装されたものであってもよい。
【0030】
配送先取得部55は、配送者への割り当ての対象となる複数の配送先の情報(配送先情報)を取得する。配送先情報は、配送先の位置を示す情報を含む。配送先の位置を示す情報は、配送先の緯度経度、配送拠点からみた角度、配送拠点との距離を含んでよい。また配送先情報は、配送先の先頭の3桁の郵便番号を含んでよい。
【0031】
配送クラスタ決定部56は、取得された配送先の情報を学習済の機械学習モデルに入力し、機械学習モデルから出力された配送クラスタを示す情報に基づいて、その情報が入力された配送先が属する配送クラスタを決定し、配送先および決定された配送クラスタを互いに関連付けて記憶部12に格納する。機械学習モデルから出力された配送クラスタを示す情報は、例えば複数の配送クラスタのそれぞれに属する確率を示す値であってよい。また配送クラスタ決定部56は、決定された配送クラスタに対応する配送者を、その配送先を担当する配送者として出力する。
【0032】
ルート決定部57は、配送者に割り当てられた複数の配送先の位置に基づいて、その複数の配送先を辿るルートを決定する。ルートの決定はいわゆる巡回セールスマン問題の近似解法、例えばPallalel cheapest insertionとTabu searchの組み合わせにより行われてよい。
【0033】
以下では、機械学習に用いる学習データの生成について説明する。
図3は、学習データ生成部51の処理の一例を示すフロー図である。
【0034】
学習データ生成部51は、はじめに、それぞれ複数の配送先を含む複数の過去の配送先リストを取得する(ステップS101)。配送先リストのそれぞれは、過去の荷物の配送において、1人の配送者が配送拠点からの1まとまり(または1日)の配送において貨物を配達した複数の配送先の情報を含む。また、学習データ生成部51は1つの物流拠点のみにおける複数の配送先リストを取得すると機械学習モデル53に物流拠点の配送範囲の特性を反映しやすく好適である。
【0035】
過去の配送先リストは、配送日、配送拠点、配送会社コード、車両情報、複数の配送先の情報を含み、配送拠点における実際の配送に利用されている。車両情報は、車両識別情報、積載可能な重量、稼働可能時間帯を含む。配送先の情報は、注文番号、郵便番号、住所、配達指定時間帯、荷物の識別情報および重量を含む。
図4には記載されていないが、学習データ生成部51は、配送先リストを取得すると、その配送先リストに含まれる配送先の住所から、配送先の緯度経度を算出し、さらにその配送先の緯度経度と配送拠点の緯度経度とから、配送拠点と配送先との距離および配送拠点からの配送先の方向を算出し、それらと、配送先の郵便番号の先頭の3桁も配送先情報として記憶部12に格納する。
【0036】
配送先リストが取得されると、学習データ生成部51は、ステップS102からS104に示されるクラスタリング処理により、複数の配送先リストに含まれる複数の配送先を複数の配送クラスタにクラスタリングする。以下ではクラスタリング処理について順に説明する。
【0037】
配送先リストが取得されると、学習データ生成部51は複数の過去の配送先リストのそれぞれの重心を取得する(ステップS102)。より具体的には、配送先リストのそれぞれについて、配送先リストに含まれる複数の配送先の位置の重心を算出し、その重心を配送先リストの重心として取得する。重心は、配送先リストの代表位置の一種であり、重心の代わりに、例えば重心に最も近い配送先の位置といった、他の手法で算出される代表位置が用いられてもよい。
【0038】
そして、学習データ生成部51は、重心に基づいて、配送先リストを予備クラスタにクラスタリングする(ステップS103)。このクラスタリングは、k-means法などの公知のクラスタリング手法によって実行されてよい。この際、予備クラスタの数が、配送拠点における平均の配送者の数となるようにクラスタリングが行われてよい。平均的な配送者の数は、例えば、過去20日における、1日当たりの平均配送者数であってよい。
【0039】
配送先リストがクラスタリングされると、学習データ生成部51は予備クラスタと配送先リストに含まれる複数の配送先とに基づいて、複数の配送クラスタに属する配送先を決定する(ステップS104)。ここで、配送クラスタと予備クラスタとは1対1に対応し、学習データ生成部51は対応する予備クラスタに属する配送先リストに含まれる配送先を配送クラスタに属する配送先として決定する。
【0040】
そして学習データ生成部51は、配送クラスタのそれぞれの重心を算出する(ステップS105)。この重心は、機械学習モデルの学習において用いられる。また配送クラスタに属する配送先が決定されると、学習データ生成部51は、複数の配送先情報と、その配送先を含む配送クラスタを含む正解データと、を含む学習データを決定する(ステップS106)。ここでは、学習データは、複数の配送クラスタのそれぞれに含まれる配送先の数の平均と、複数の配送クラスタのそれぞれの重心の位置も含む。
【0041】
図4は、配送先、配送先リスト、配送クラスタの関係を模式的に示す図である。
図4には、配送クラスタに相当する領域G(実線で囲まれた領域)と、配送先リストに相当する領域L(破線で囲まれた領域)と、配送先リストの重心Cと、配送先の位置Pと、が図示されている。
図4からわかるように、配送クラスタに属する配送先には、その位置Pが配送クラスタの領域G内にないものも存在する。1つの配送先リストには、道路などの配送に関する実際の環境が考慮されて複数の配送先が割り当てられている蓋然性が高い。そのため、配送先リストのクラスタリングを用いることにより、配送者を特定する機械学習モデルの学習データにおいて、配送にかかわる実情を考慮した配送クラスタ(正解データ)を生成することが可能になる。
【0042】
ここで、ステップS103およびS104による配送先リストの予備クラスタへのクラスタリング、配送先が属する配送クラスタの決定において、配送先リストを担当する配送者が誰であるかは利用していない。実際の配送では、あるエリアを担当する配送者は原則として変動が少ないが、配送者の休暇などにより変化するケースもある。このため、機械学習モデル53の学習において配送者の情報を用いることは容易でない。このようなクラスタリングにより、配送者の情報を用いることが難しい状況においても配送者を決定するための機械学習モデル53を学習させることができる。
【0043】
学習データが生成されると、機械学習モデルの学習が行われる。以下ではその学習について説明する。
図5は、モデル学習部52の処理の一例を示すフロー図である。モデル学習部52は、学習データを取得する(ステップS151)。学習データは配送先の情報である配送先情報と、正解データとしての配送クラスタとを含む。
【0044】
ステップS152,S153に示される処理は、学習データを用いて機械学習モデル53を学習させる処理であり、実際には、複数の配送先情報および正解データについて1つのバッチとして処理される。ステップS155からS157の処理は次のバッチで用いられる損失関数をチューニングする処理である。なお、初回の処理の前に、初期の損失関数は設定されているものとする。
【0045】
モデル学習部52は、機械学習モデル53に学習データに含まれる配送先情報を入力し、出力を取得する(ステップS152)。機械学習モデル53には、配送先情報のうち、配送拠点との距離と、配送拠点からみた方向と、郵便番号とが入力される。機械学習モデル53は、配送先情報が入力されると、複数の配送クラスタに所属する確率(所属確率)を示す値を出力する。
【0046】
そして、モデル学習部52は、配送先情報が入力された機械学習モデル53の出力と、学習データに含まれる配送クラスタの正解データとに基づいて、損失関数の値を算出し、その損失関数の値に基づいて、例えば勾配降下法により、機械学習モデル53を学習させる(ステップS153)。機械学習モデル53の学習は、例えばニューラルネットワークの重みパラメータの変更であってよい。
【0047】
機械学習モデル53は、郵便番号に対してembeddingの加工をし、加工後のデータを機械学習モデル53内の後続の処理に入力する。なお、機械学習モデル53の学習においては、Dropoutと、Batch Normalizationと、ReLuの活性化関数とが用いられてよい。
【0048】
そして、次のバッチで用いる損失関数を決定する処理が行われる。はじめに、モデル学習部52は、配送先のそれぞれについて取得した出力に基づいて、配送先のそれぞれが所属する配送クラスタを決定する(ステップS155)。より具体的には、モデル学習部52は、取得された所属確率の値が最も大きい配送クラスタを、配送先の所属する配送クラスタ(機械学習モデルの出力が示す予想される配送クラスタ)として決定する。
【0049】
複数の配送先のそれぞれについて所属する配送クラスタが決定されると、モデル学習部52は、配送クラスタのそれぞれについて、重心と、所属する配送先の数(要素数)とを算出する(ステップS156)。そして、算出された重心と配送先の数とに基づいて、損失関数を決定する(ステップS157)。
【0050】
損失関数は、以下に示されるように、重み係数が付加されたされたクロスエントロピーCEの算出式により表される。
【0051】
【0052】
jは配送クラスタの識別のために付与される数であり、Kは配送クラスタの数である。Sjはsoftmax関数により正規化された機械学習モデル53の出力であり、tjは正解データである。αjはj番目の配送クラスタにおける重み係数であり、モデル学習部52は、ステップS155において算出された配送クラスタの要素数と重心とに基づいて重み係数を決定する。
【0053】
より具体的には、モデル学習部52は、j番目の配送クラスタにおける重み係数を、j番目の配送クラスタについて算出された配送先の数と、学習データに含まれる配送先の数の平均値(平均値は基準値の一例である)との差、および、j番目の配送クラスタについて算出された重心(重心は代表位置の一例である)と学習データに含まれるj番目の配送クラスタの重心との差に基づいて決定する。これらの差が大きくなると、その配送クラスタの修正のためにより多くの重みが与えられる。これにより、配送クラスタ間のバランスを改善することができる。なお、重心の差および配送先の数の平均値からの差のうち一方を用いて重み係数が決定されてもよい。この場合も一定の効果を得ることは可能である。
【0054】
そして、モデル学習部52は、学習の終了条件を満たさない場合には(ステップS158のN)ステップS152から処理を再実行し、学習の終了条件を満たす場合(ステップS158のY)には、処理を終了する。学習の終了条件は、単にループ回数であってよいし、テストデータを用いて現時点の機械学習モデル53の処理性能を示す値を算出し、その値が閾値を超えることであってもよい。
【0055】
ステップS154からS157の処理により、単に配送先と所属する配送クラスタの正解データとから学習させる場合に比べて、配送クラスタのそれぞれの要素数の分散を抑えるように機械学習モデルを学習させることが可能になり、配送者への配送先・荷物の割り当ての精度を高めることができる。
【0056】
次に、学習された機械学習モデル53を用いて配送先を配送者に割り当てる処理について説明する。
図6は、配送先取得部55、配送クラスタ決定部56およびルート決定部57の処理の一例を示すフロー図である。
【0057】
はじめに配送先取得部55は、配送者への割り当ての対象となる複数の配送先についての配送先情報を取得する(ステップS201)。配送先情報は、少なくとも、配送先の位置を示す、配送拠点からみた角度および配送拠点との距離と、配送先の先頭の3桁の郵便番号とを含んでよい。
【0058】
配送クラスタ決定部56は、取得された複数の配送先の配送先情報を、学習済の機械学習モデル53に入力し、機械学習モデル53の出力として各配送クラスタへの所属確率を取得する(ステップS202)。また配送先のそれぞれを、最も所属確率の高い配送クラスタに所属させる(ステップS203)。
【0059】
複数の配送先のそれぞれが所属する配送クラスタが決定されると、配送クラスタ決定部56は、配送クラスタのそれぞれが含む配送先の数を算出する(ステップS204)。配送先の数は、配送クラスタがあらかじめ定められた配送にかかる条件を満たすかの判定に用いられる指標である。配送クラスタ決定部56はこの指標として、配送クラスタに割り当てられた配送先の荷物の重量の合計、および、その荷物の体積の合計のうち少なくとも一方を算出してもよい。
【0060】
配送クラスタについて指標が算出されると、配送クラスタ決定部56は算出された配送先の数が閾値を超える配送クラスタが存在するか判定する(ステップS205)。この判定は、配送先が分類される配送クラスタのいずれかが、予め定められた配送にかかる条件を満たすか否かを判定する処理の一例である。例えば、配送クラスタ決定部56は、さらに、配送クラスタに割り当てられた配送先の荷物の重量または体積の合計が閾値を超えるか否か判定してもよい。また配送クラスタ決定部56は、配送にかかる時間を予測し、それが始業終業時間に収まるか否かを判定してもよい。
【0061】
閾値を超える(条件を満たさない)配送クラスタが存在する場合には(ステップS205のY)、配送クラスタ決定部56は、閾値を超える配送クラスタと、他の配送先クラスタとの間で配送先を移動させる(ステップS206)。言い換えると、配送クラスタ決定部56は、条件を満たさない配送クラスタに所属する配送先を、他の配送クラスタに所属するように移動させる。より具体的には、配送クラスタ決定部56は、以下の移動処理を、閾値を超えるとされた配送クラスタに属する配送先の数が閾値を超えなくなるまで繰り返す。移動処理は、配送クラスタ決定部56が、閾値を超える配送クラスタに含まれる配送先のうち、他の配送クラスタへの所属確率の最大値が最も大きい配送先を取得し、その所属確率が最大となる他の配送クラスタへ配送先を移動しても他の配送クラスタが配送にかかる条件を満たす場合に、その配送クラスタへ配送先を移動させる処理である。なお、荷物の重量または体積の合計の条件を満たすまで上述の移動処理が行われてもよい。
【0062】
一方、閾値を超える(条件を満たさない)配送クラスタが存在しない場合には(ステップS205のN)、ステップS206の処理をスキップする。
【0063】
そして、配送クラスタ決定部56は、複数の配送先が所属する配送クラスタに対応する配送者を、配送先を担当する配送者として出力する(ステップS207)。この処理は、より具体的には、配送クラスタ決定部56が、配送クラスタごとに、その配送クラスタに属する複数の配送先を、その配送クラスタに対応する配送者に割り当てられた配送先のリストとして出力する処理であってよい。また出力先は記憶部12またはルート決定部57であってよい。なお、割り当てられる配送者は配送用の車両であってもよい。
【0064】
そして、ルート決定部57は、配送者のそれぞれに割り当てられた配送先をめぐるルートを決定する(ステップS208)。ルートの決定の手法は公知であるので詳細の説明を省略する。
【0065】
本実施形態では様々な効果を得ることができる。
図3に示される、配送先リストのクラスタリングを用いて学習データを生成し、その学習データで機械学習モデル53を学習することにより、単なるクラスタリングでは考慮ができない、道路の存在などの事情も配送者への割り当てに反映することができる。これにより、例えば、ある配送者に、間に有効な道路のない2つの地域にある配送先が割り当てられることをある程度防ぐことができる。また、配送クラスタを利用して配送先を配送者に割り当てることにより、配送者が担当するエリアをある程度固定することができる。これにより、配送者の経験によりサービスレベルを向上させ、配送のパフォーマンスを向上させることが可能になる。
【0066】
他にも、
図5に示される学習の手法により配送クラスタに属する配送先の数のバランスを改善し、
図6のステップS205,S206により、機械学習モデル53の出力結果を用いて、事後的に配送クラスタを調整することができる。これらにより、配送者に対して非現実的な配送先・荷物の割り当てをすることを防ぐことができる。
【0067】
本実施形態においては、配送先を、配送者に対応する配送クラスタに分類する際に、機械学習モデルを用い、また学習データの作成に一般的なクラスタリング手法を用いている。機械学習モデルを用い、また学習データの作成に一般的なクラスタリング手法を用いるという手法は、処理の柔軟性が高く処理の付加が容易である。そのため、上述の様々な効果を得ることを容易に実現できる。この特性は、様々な条件を考慮する必要がある、配送先の配送者への割り当てにおいて非常に有用である。
【符号の説明】
【0068】
1 配送管理装置、11 プロセッサ、12 記憶部、13 通信部、14 入出力部、51 学習データ生成部、52 モデル学習部、53 機械学習モデル、55 配送先取得部、56 配送クラスタ決定部、57 ルート決定部、C 重心、G,L 領域、P 位置。
【手続補正書】
【提出日】2022-12-19
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段と、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段と、
を含み、
前記クラスタリング処理は、それぞれ1つの配送者により配送される複数の配送先を含む複数の過去の配送先リストの代表位置を取得し、前記取得された代表位置に基づいて前記複数の過去の配送先リストを予備クラスタに分類するクラスタリングを実行し、前記複数の過去の配送先リストが分類された前記予備クラスタと、前記複数の配送先リストに含まれる前記複数の配送先とに基づいて、前記学習データに含まれる複数の配送クラスタに属する配送先を決定する、
配送管理システム。
【請求項2】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段と、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段と、
を含み、
前記学習手段は、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれに含まれる配送先の数を算出し、
前記予想された配送クラスタについて前記算出された配送先の数と、配送先の数の基準値とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
配送管理システム。
【請求項3】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段と、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段と、
を含み、
前記学習手段は、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれの代表位置を算出し、
前記予想された配送クラスタについて前記算出された代表位置と、前記学習データにおける配送クラスタの代表位置とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
配送管理システム。
【請求項4】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段と、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段と、
前記学習手段により学習された機械学習モデルに配送先の配送先情報を入力し、前記機械学習モデルから出力された配送クラスタを示す情報に基づいて、前記入力された配送先が所属する配送クラスタを決定する配送クラスタ決定手段と、
を含み、
前記機械学習モデルは、前記配送先の配送先情報が入力されると、複数の配送クラスタのそれぞれについて前記入力された配送先が属する確率を示す値を出力し、
前記配送クラスタ決定手段は、前記確率を示す値に基づいて、前記入力された配送先が所属する配送クラスタを決定する、
配送管理システム。
【請求項5】
請求項4に記載の配送管理システムにおいて、
前記配送クラスタ決定手段は、前記決定された配送先が所属する配送クラスタのいずれかが、予め定められた条件を満たさない場合に、前記確率を示す値に基づいて、前記条件を満たさない配送クラスタに所属する配送先を、他の配送クラスタに所属するように移動させる、
配送管理システム。
【請求項6】
学習データ生成手段が、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成するステップと、
学習手段が、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させるステップと、
を含み、
前記クラスタリング処理では、それぞれ1つの配送者により配送される複数の配送先を含む複数の過去の配送先リストの代表位置を取得し、前記取得された代表位置に基づいて前記複数の過去の配送先リストを予備クラスタに分類するクラスタリングを実行し、前記複数の過去の配送先リストが分類された前記予備クラスタと、前記複数の配送先リストに含まれる前記複数の配送先とに基づいて、前記学習データに含まれる複数の配送クラスタに属する配送先を決定する、
配送管理方法。
【請求項7】
学習データ生成手段が、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成するステップと、
学習手段が、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させるステップと、
を含み、
前記機械学習モデルを前記学習させるステップでは、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれに含まれる配送先の数を算出し、
前記予想された配送クラスタについて前記算出された配送先の数と、配送先の数の基準値とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
配送管理方法。
【請求項8】
学習データ生成手段が、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成するステップと、
学習手段が、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させるステップと、
を含み、
前記機械学習モデルを前記学習させるステップでは、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれの代表位置を算出し、
前記予想された配送クラスタについて前記算出された代表位置と、前記学習データにおける配送クラスタの代表位置とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
配送管理方法。
【請求項9】
学習データ生成手段が、クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成するステップと、
学習手段が、前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させるステップと、
配送クラスタ決定手段が、前記学習された機械学習モデルに配送先の配送先情報を入力し、前記機械学習モデルから出力された配送クラスタを示す情報に基づいて、前記入力された配送先が所属する配送クラスタを決定するステップと、
を含み、
前記機械学習モデルは、前記配送先の配送先情報が入力されると、複数の配送クラスタのそれぞれについて前記入力された配送先が属する確率を示す値を出力し、
前記配送クラスタを決定するステップでは、前記確率を示す値に基づいて、前記入力された配送先が所属する配送クラスタを決定する、
配送管理方法。
【請求項10】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段、および、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段、
としてコンピュータを機能させ、
前記クラスタリング処理は、それぞれ1つの配送者により配送される複数の配送先を含む複数の過去の配送先リストの代表位置を取得し、前記取得された代表位置に基づいて前記複数の過去の配送先リストを予備クラスタに分類するクラスタリングを実行し、前記複数の過去の配送先リストが分類された前記予備クラスタと、前記複数の配送先リストに含まれる前記複数の配送先とに基づいて、前記学習データに含まれる複数の配送クラスタに属する配送先を決定する、
プログラム。
【請求項11】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段、および、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段、
としてコンピュータを機能させ、
前記学習手段は、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれに含まれる配送先の数を算出し、
前記予想された配送クラスタについて前記算出された配送先の数と、配送先の数の基準値とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
プログラム。
【請求項12】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段、および、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段、
としてコンピュータを機能させ、
前記学習手段は、
前記複数の配送先のそれぞれについて予想された配送クラスタに基づいて、前記予想された配送クラスタのそれぞれの代表位置を算出し、
前記予想された配送クラスタについて前記算出された代表位置と、前記学習データにおける配送クラスタの代表位置とに基づいて損失関数を決定し、
前記予想された配送クラスタと、前記学習データに含まれる分類された配送クラスタとに基づいて前記損失関数の値を算出し、前記算出された値に基づいて前記機械学習モデルを学習させる、
プログラム。
【請求項13】
クラスタリング処理により、複数の配送先の配送先情報であって過去の配送先の位置を示す情報を含む配送先情報と、前記複数の配送先のそれぞれが分類されそれぞれ配送者に対応づけられる配送クラスタを示す正解データとを含む学習データを生成する学習データ生成手段、
前記学習データに含まれる複数の配送先の配送先情報を機械学習モデルに入力し、前記機械学習モデルから出力される予想された配送クラスタを示す情報と前記学習データに含まれる分類された配送クラスタとに基づいて、前記機械学習モデルを学習させる学習手段、および、
前記学習手段により学習された機械学習モデルに配送先の配送先情報を入力し、前記機械学習モデルから出力された配送クラスタを示す情報に基づいて、前記入力された配送先が所属する配送クラスタを決定する配送クラスタ決定手段、
としてコンピュータを機能させ、
前記機械学習モデルは、前記配送先の配送先情報が入力されると、複数の配送クラスタのそれぞれについて前記入力された配送先が属する確率を示す値を出力し、
前記配送クラスタ決定手段は、前記確率を示す値に基づいて、前記入力された配送先が所属する配送クラスタを決定する、
プログラム。