以下に、本願に係る配送処理装置、配送処理方法および配送処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る配送処理装置、配送処理方法および配送処理プログラムが限定されるものではない。また、以下の実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
また、以下の説明では、配送処理装置が実行する処理として、利用者U01,U02…が使用する端末装置100,101…の位置を示す位置情報の履歴に基づいて利用者U01,U02…の在宅確率を推定し、かかる在宅確率に基づいて移動体である配送車に積載する荷物を振り分ける配送処理の一例について説明する。
[1−1.配送処理の概念]
まず、図1Aおよび図1Bを用いて、実施形態に係る配送処理の一例について説明する。図1Aおよび図1Bは、実施形態に係る配送処理の一例を示す図である。なお、図1Aでは、各利用者U01,U02…の各時間帯における在宅確率に基づいて1台の移動体である配送車Hに積載する荷物#1〜#6を振り分ける場合を示している。また、図1Bでは、各利用者U01,U02…の各時間帯における在宅確率に基づいて複数の配送車H1,H2…に積載する荷物#1〜#6を振り分ける場合を示している。
図1Aに示すように、実施形態に係る配送処理システム1は、配送処理装置10、判定サーバ300、および各利用者U01,U02…が使用する端末装置100,101…を含む。配送処理装置10、判定サーバ300、および端末装置100,101…は、例えば、インターネットを介して接続される。
配送処理装置10は、各利用者U01,U02…の各時間帯における在宅確率に基づいて配送車に積載する荷物を振り分ける振分処理を実行する装置であり、サーバ装置やクラウドシステム等により実現される。
判定サーバ300は、各利用者U01,U02…の各時間帯における在宅確率を推定する推定処理などを実行する情報処理装置であり、サーバ装置やクラウドシステム等により実現される。
端末装置100,101…は、スマートフォン、タブレット端末やPDA(Personal Digital Assistant)等の移動端末、ノート型PC(Personal Computer)等の端末装置であり、移動通信網、インターネット、および無線LAN(Local Area Network)等のネットワークを介して、任意のサーバと通信可能な端末装置である。また、端末装置100,101…は、GPS(Global Positioning System)等の測位手段を用いて、端末装置100,101…の位置(以下、「現在地」と記載する。)を所定の時間間隔で特定する測位機能を有する。
まず、端末装置100,101…は、GPS等の測位手段を用いて端末装置100,101…の現在位置を測定する。そして、判定サーバ300は、各利用者U01,U02…の端末装置100,101…から現在位置する位置情報を収集する(ステップS1)。例えば、端末装置100,101…は、予めインストールされた所定のアプリケーション等の機能により、位置情報を判定サーバ300に送信してもよい。
また、判定サーバ300は、端末装置100,101…から収集した位置情報の履歴に基づいて各利用者U01,U02…の各時間帯における在宅確率を推定する推定処理を実行する(ステップS2)。そして、判定サーバ300は、各利用者U01,U02…の各時間帯における在宅確率の情報を配送処理装置10に送信する(ステップS3)。
次に、配送処理装置10は、各利用者U01,U02…の各時間帯における在宅確率に基づいて配送車に積載する荷物を振り分ける(ステップS4)。
ここで、配送処理装置10が実行する振分処理について説明する。まず、配送処理装置10は、後述する在宅確率データベース2から各利用者U01,U02…の在宅確率の高い時間帯を特定する。そして、配送処理装置10は、後述する荷物データベース3に登録されている各利用者U01,U02…に配送する荷物やかかる荷物の配送先を、特定した在宅確率の高い時間帯に対応付ける。かかる対応付けた情報は、後述する配送データベース4に登録される。
つまり、配送データベース4に登録される情報としては、「利用者ID」、「荷物ID」、「在宅確率の高い時間帯」、および「配送先ID」といった項目を有する情報が登録される。この例では、利用者U01〜U06は、各々異なる拠点(「拠点#01」、「拠点#02」、「拠点#03」…)に居住しているものとする。
そして、配送処理装置10は、上記の情報から「在宅確率の高い時間帯」が同じである荷物を振り分ける。この例では、配送処理装置10は、「午前中」に届ける荷物(「荷物#1」および「荷物#3」)、「12:00〜14:00」に届ける荷物(「荷物#2」および「荷物#4」)、「14:00〜16:00」に届ける荷物(「荷物#5」および「荷物#6」)を振り分けている。
そのあと、配送処理装置10は、例えば、後述する積載装置200に対して振り分けに応じた荷物(「荷物#1」〜「荷物#6」)の積載の指示を出力する(ステップS5)。そして、積載装置200は、かかる指示に応じて配送処理装置10によって選択された、この例では「拠点#01」〜「拠点#06」を配送経路に含む1台の配送車Hに、振り分けた荷物(「荷物#1」〜「荷物#6」)を積載する。
具体的には、積載装置200は、例えば、荷台Pの後方側に開閉扉D1が設けられると共に荷台Pの前方側(進行方向側)に開閉扉D3が設けられる配送車Hにおいて、「午前中」に届ける最初の荷物(「荷物#1」および「荷物#3」)を、荷台Pにおける開閉扉D1に一番近い領域1に積載する。
続けて、積載装置200は、「12:00〜14:00」に届ける荷物(「荷物#2」および「荷物#4」)を、荷台Pにおける領域1の隣の開閉扉D3側の領域2に積載し、さらに、「14:00〜16:00」に届ける荷物(「荷物#5」および「荷物#6」)を、荷台Pにおける領域2の隣の開閉扉D3側の領域3に積載する。
そして、積載装置200は、例えば、「20:00〜21:00」に届ける最後の荷物を、荷台Pにおける開閉扉D3に一番近い領域nに積載する。
このように、積載装置200は、配送処理装置10からの指示を受けて、各利用者U01,U02…の在宅確率に基づいて振り分けた荷物(「荷物#1」〜「荷物#6」)を、配送車Hの荷台Pにおいて決められた領域1,2…nに積載する。
これにより、配送車Hのドライバは、「午前中」に届ける最初の荷物を荷台Pの後方側の開閉扉D1から取り出すことができ、「12:00〜14:00」や「14:00〜16:00」に届ける荷物を荷台Pの一方の側方側の中央に設けられた開閉扉D2から取り出すことができ、「20:00〜21:00」に届ける最後の荷物を荷台Pの前方側の運転席と連通した開閉扉D3から取り出すことができる。よって、配送車Hのドライバは、配送車Hから振り分けた荷物を効率良く取り出すことができる。なお、本実施形態におけるドライバは、操作者に相当する。
なお、荷台Pにおいて荷物を積載する位置は、上述の例に限られず、例えば、領域nに「午前中」に届ける最初の荷物(「荷物#1」および「荷物#3」)を積載し、領域1に「20:00〜21:00」に届ける最後の荷物を積載してもよい。つまり、荷台Pにおいて荷物を積載する位置は、配送車Hのドライバの作業効率に応じて決定すればよい。
また、配送車Hにおける開閉扉の設置位置および設置数は、上述の形態に限られず、振り分けた荷物の荷台Pの積載場所に応じて決めればよく、例えば、荷台Pの一方の側方側に複数の開閉扉を荷台Pの後方側から前方側にわたって設置してもよい。
また、配送処理装置10は、同じ配送時間帯にある荷物が複数ある場合、複数の荷物が分散されるように複数の配送車に対して荷物を振り分けるようにしてもよい。
具体的には、図1Bに示すように、まず、配送処理装置10は、「午前中」に届ける荷物(「荷物#1」および「荷物#3」)、「12:00〜14:00」に届ける荷物(「荷物#2」および「荷物#4」)、「14:00〜16:00」に届ける荷物(「荷物#5」および「荷物#6」)を振り分ける。
そして、配送処理装置10は、「午前中」に届ける荷物(「荷物#1」および「荷物#3」)を、この例では「拠点#01」〜「拠点#06」を配送経路に含む配送車H01,H02に均等に振り分ける。同様にして、配送処理装置10は、「12:00〜14:00」に届ける荷物(「荷物#2」および「荷物#4」)と「14:00〜16:00」に届ける荷物(「荷物#5」および「荷物#6」)とを、配送車H01,H02に均等に振り分ける。
そのあと、配送処理装置10は、積載装置200に対して振り分けに応じた荷物(「荷物#1」〜「荷物#6」)の積載の指示を出力する。そして、積載装置200は、かかる指示に応じて振り分けた荷物(「荷物#1」〜「荷物#6」)を配送車H01,H02に積載する。
この例では、積載装置200は、配送車H01に、「午前中」に届ける「荷物#1」と「12:00〜14:00」に届ける「荷物#2」と「14:00〜16:00」に届ける「荷物#5」とを積載する。また、積載装置200は、配送車H02に、「午前中」に届ける「荷物#3」と「12:00〜14:00」に届ける「荷物#4」と「14:00〜16:00」に届ける「荷物#5」とを積載する。
このように、積載装置200は、配送処理装置10からの指示を受けて、各利用者U01,U02…の各時間帯における在宅確率に基づいて振り分けた荷物(「荷物#1」〜「荷物#6」)が均等に分散されるように配送車H01,H02に積載する。
これにより、振り分けた荷物(「荷物#1」〜「荷物#6」)の配送の負担を1台の配送車だけに与えるのではなく、複数の配送車H01,H02に分散させることができる。
このように、配送処理装置10は、荷物の配送先である拠点に居住する各利用者U01,U02…の各時間帯における在宅確率に基づいて配送車H,H01,H02に積載する荷物(「荷物#1」〜「荷物#6」)を振り分ける。よって、かかる配送処理装置10によれば、配送車H,H01,H02による配送先への荷物(「荷物#1」〜「荷物#6」)の配送の効率化を図ることができる。
なお、図1Aおよび図1Bに示す例においては、配送処理装置10は、荷物の配送先である拠点に居住する各利用者の各時間帯における在宅確率に基づいて配送車に積載する荷物を振り分けた。他の振分方法としては、各時間帯における在宅確率に加えて、配送車の配送経路情報、利用者による荷物の配送の指定時間、および配送車を運転するドライバの評価情報に基づいて配送車に積載する荷物を振り分けてもよい。かかる種々の振分方法については、以下の実施形態において詳細に説明する。
[1−2.配送処理システムの構成例]
次に、図2を用いて、実施形態に係る配送処理装置10を含む配送処理システム1の構成例について説明する。図2は、実施形態に係る配送処理システム1の構成例を示す図である。図2に示すように、配送処理システム1は、積載装置200と、配送処理装置10と、判定サーバ300とを含む。なお、判定サーバ300の詳細な説明については、図8〜図12を用いて後述することにする。
配送処理システム1において、積載装置200、配送処理装置10、および判定サーバ300は、ネットワークNを介して、互いに有線または無線通信可能に接続される。なお、図2に示される配送処理システム1に含まれる積載装置200および判定サーバ300の数は、図示した数に限られない。
[1−3.積載装置]
積載装置200は、例えば、各利用者の各時間帯における在宅確率に基づいて振り分けた荷物をロボットが自動でピッキングし、ピッキングした荷物を所定の配送車および配送車の荷台における所定の位置に積載する装置(ピッキング装置)である。なお、積載装置200は、ピッキング装置に限られず、各利用者の各時間帯における在宅確率に基づいて振り分けた荷物を自動で所定の配送車および配送車の荷台における所定の位置に積載できる装置であればよい。
積載装置200の他の例は、分岐装置やローラーコンベアなどのハードウェア要素を備え、単一の配送車に対し右、中、左といった具合に近傍に設けられた複数の排出口(例えば、ローラーコンベアの終端)すなわち荷物排出位置を備えたものでもよい。この場合、後述の出力部8は、荷物を、在宅確率が高い時間帯の早い順または配送経路情報の順のまとまり毎に、複数の荷物排出位置のいずれかに排出させるように積載装置200に対して指示を出力する。排出された荷物はロボットなり人間の配送員などが配送車に積み込む。
[1−4.配送処理装置の構成例]
配送処理装置10は、通信部11と、記憶部12と、制御部13とを含む。なお、配送処理装置10は、配送処理装置10の管理者等から各種操作を受け付ける入力部(例えば、キーボード、マウス等)および各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を含むものであってもよい。
通信部11は、例えば、NIC(Network Interface Card)などによって実現される。また、通信部11は、ネットワークNに有線または無線の手段によって接続され、積載装置200と配送処理装置10との間、および配送処理装置10と判定サーバ300との間で情報の送受信を行う。
記憶部12は、例えば、ランダムアクセスメモリ(Random Access Memory;RAM)またはフラッシュメモリ(Flash Memory)のような半導体メモリ素子、または、ハードディスクまたは光ディスクのような記憶装置によって実現される。また、記憶部12は、在宅確率データベース2と、荷物データベース3と、配送データベース4とを有する。
在宅確率データベース2は、判定サーバ300から送信された各利用者の各時間帯における在宅確率の情報が格納されるデータベースである。
図3は、実施形態に係る在宅確率データベース2に登録される情報の一例を示す図である。図3に示す例では、「端末ID」、「利用者ID」、「位置情報」、「拠点ID」、および各時間帯の利用者の拠点に居る確率が登録される。なお、この例では、「午前中(8:00〜12:00)」、「12:00〜14:00」、「14:00〜16:00」、「16:00〜18:00」、「18:00〜20:00」、「20:00〜21:00」と6つの時間帯に分けているが、この時間帯に限られるものではない。また、在宅確率データベース2には、図3に示す項目以外にも、任意の項目を有する情報が登録されていてよい。
ここで、「端末ID」とは、GPS等の測位機能を用いて、対応付けられた位置情報を取得した端末装置100,101…を示す識別子である。また、「利用者ID」とは、対応付けられた位置情報を取得した端末装置100,101…を使用している利用者U01,U02…を示す識別子である。また、「位置情報」とは、対応付けられた「端末ID」が示す端末装置100,101…によって測定された端末装置100,101…の位置を示す情報である。
また、「拠点ID」とは、利用者U01,U02…の活動の足場とする場所、すなわち、拠点とする場所を識別する識別子である。ここで、拠点とは、例えば、利用者U01,U02…が居住している住居のみならず、利用者U01,U02…が定期的に訪れる場所であれば、職場、仮設住宅、公園等といった所定の施設であってもよい。さらには、拠点は、位置を特定することができるのであれば、現実に存在する所定の地点等であってもよく、例えば、所定の職場の受付やビルの守衛所等であってもよい。すなわち、拠点とは、荷物を配送する者が利用者U1,U2…に会うことができる地点や、配送を行うサービスにおいて配送を行う単位となる場所であれば、任意の地点が採用可能である。
例えば、図3に示す例では、在宅確率データベース2には、端末ID「ID101」、利用者ID「U01」、位置情報「位置#1」、拠点ID「拠点#01」、「午前中(8:00〜12:00)」の在宅確率「80%」、「12:00〜14:00」の在宅確率「50%」、「14:00〜16:00」の在宅確率「30%」、「16:00〜18:00」の在宅確率「30%」、「18:00〜20:00」の在宅確率「30%」、「20:00〜21:00」の在宅確率「30%」の情報が登録されている。
このような情報は、端末ID「ID101」が示す端末装置100が、利用者ID「U01」が示す利用者U01によって使用されている旨を示す。また、位置情報「位置#1」から利用者U01の拠点が「拠点#01」である旨を示す。また、拠点ID「拠点#01」が示す拠点に、「午前中(8:00〜12:00)」に利用者U01が居る確率が「80%」である旨を示す。
荷物データベース3は、利用者に配送する荷物の情報などが登録されるデータベースである。
図4は、実施形態に係る荷物データベース3に登録される荷物の情報の一例を示す図である。図4に示す例では、「利用者ID」、「荷物ID」、「配送先ID」、「指定時間の有無」、および「指定時間帯」といった項目を有する情報が登録される。なお、荷物データベース3には、図4に示す項目以外にも、任意の項目を有する情報が登録されていてよい。
ここで、「荷物ID」とは、利用者U01,U02…が居住する拠点へ配送される荷物の識別子である。例えば、利用者U01が居住する拠点へ配送される荷物がある場合、「荷物ID」には「荷物#1」が登録される。また、「配送先ID」とは、配送先となる拠点、すなわち、訪問先となる拠点の拠点IDである。例えば、利用者U01の拠点が位置情報「位置#1」から「拠点#01」であった場合、「配送先ID」の項目には「拠点#01」が登録される。
また、「指定時間の有無」とは、利用者U01,U02…が配送される荷物の時間指定を行ったか否かが登録される。例えば、利用者U01が配送される荷物#1の時間指定を行わなかった場合、「指定時間の有無」の項目には「無」が登録される。また、例えば、利用者U04が配送される荷物#4の時間指定を行った場合、「指定時間の有無」の項目には「有」が登録される。かかる場合、利用者U04が指定した時間帯が「午前中」であれば、「指定時間帯」の項目には「午前中」が登録される。
配送データベース4は、配送車の配送経路情報や配送車を運転するドライバの評価情報などが登録されるデータベースである。
図5は、実施形態に係る配送データベース4に登録される配送車の情報の一例を示す図である。図5に示す例では、「配送車ID」、「ドライバID」、「配送経路情報」、および「ドライバ評価情報」といった項目を有する情報が登録される。なお、配送データベース4には、図5に示す項目以外にも、任意の項目を有する情報が登録されていてよい。
ここで、「配送車ID」とは、荷物を拠点へと配送する配送車の識別子である。「ドライバID」とは、配送車を運転するドライバの識別子である。
また、「配送経路情報」とは、配送車H01,H02…における予め定められた荷物の配送経路に関する情報を示す。例えば、配送車H01,H02が予め「拠点#01」を含む配送経路を割り当てられている場合、「配送経路情報」の項目には、「配送経路01」が登録される。また、例えば、配送車H03が予め「拠点#02」を含む配送経路を割り当てられている場合、「配送経路情報」の項目には、「配送経路02」が登録される。
また、「ドライバ評価情報」とは、この例では、「配送物」、「積載容量」、「担当地域」、および「日時帯」といった情報を含む。
ここで、「配送物」とは、ドライバが取り扱った荷物の種類に関する情報である。また、「積載容量」とは、配送車に積載できる荷物の量に関する情報である。また、「担当地域」とは、ドライバが主に担当した地域に関する情報である。また、「日時帯」とは、ドライバが主に荷物を配送した日時に関する情報である。
例えば、ドライバD01が、主に荷物を配送する日時帯が「平日/午前」であり、主に担当した地域が「住宅街」であり、配送物として「冷蔵・冷凍物」を取り扱ったことがあり、配送車H01の積載容量が「2トン以下」であった場合、「配送物」の項目には「冷蔵・冷凍物」が登録され、「積載容量」の項目には「2トン以下」が登録され、「担当地域」の項目には「住宅街」が登録され、「日時帯」の項目には「平日/午前」が登録される。
図6は、実施形態に係る配送データベース4に登録される、荷物に関する情報を在宅確率の高い時間帯に対応付けた情報の一例を示す図である。図6に示す例では、「利用者ID」、「荷物ID」、「在宅確率の高い時間帯」、「配送先ID」、「指定時間帯」、および「配送車ID」といった項目を有する情報が登録される。なお、配送データベース4には、図6に示す項目以外にも、任意の項目を有する情報が登録されていてよい。
ここで、「在宅確率の高い時間帯」とは、各利用者U01,U02…において拠点における在宅確率が高い時間帯を示す情報である。例えば、利用者U01においては、上記した6つの時間帯のうち「午前中」の在宅確率が「80%」と最も高く(図3参照)、かかる情報に基づいて「在宅確率の高い時間帯」の項目には「午前中」が登録される。
また、「担当配送車」とは、各利用者U01,U02…の在宅確率に基づいて振り分けた荷物#1,#2…の配送を担当する配送車を示す情報である。例えば、利用者U01の荷物#1を配送する配送車が配送車H01である場合、「担当配送車」の項目には配送車IDである「H01」が登録される。
図2に戻り、説明を続ける。制御部13は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等によって、配送処理装置10内部の記憶装置に記憶されている各種プログラムが、RAM等の記憶領域を作業領域として実行されることにより実現される。図2に示す例では、制御部13は、取得部5、特定部6、振分部7、および出力部8を有する。
なお、制御部13が有する各処理部5〜8は、以下に説明するような特定処理や振分処理の機能・作用(例えば図1Aおよび図1B)を実現・実行するものであるが、これらは説明のために整理した機能単位であり、実際のハードウェア要素やソフトウェアモジュールとの一致は問わない。すなわち、以下の特定処理や振分処理の機能・作用を実現・実行することができるのであれば、配送処理装置10は、任意の機能単位で特定処理や振分処理を実現・実行してよい。
[1−5.配送処理の作用効果の一例]
次に、図7を用いて、各処理部5〜8が実行する配送処理の内容について説明する。図7は、実施形態に係る配送処理システム1による配送処理の一例を示すフローチャートである。
図7に示すように、まず、配送処理装置10が有する取得部5は、ネットワークNを介して判定サーバ300から送信された各利用者U01,U02…の各時間帯における在宅確率の情報を取得する(S10)。取得部5は、取得した各利用者U01,U02…の各時間帯における在宅確率の情報を在宅確率データベース2に格納する(S11)。
特定部6は、在宅確率データベース2に格納されている各利用者U01,U02…の各時間帯における在宅確率の情報に基づいて各利用者U01,U02…における在宅確率の高い時間帯および各利用者U01,U02…による荷物の指定時間帯を特定する(S12)。
具体的には、特定部6は、在宅確率データベース2に格納されている各利用者U01,U02…の各時間帯(「午前中」,「12:00〜14:00」…)における在宅確率の情報(図3参照)に基づいて各利用者U01,U02…における在宅確率の高い時間帯を特定する。例えば、特定部6は、利用者U01に着目した場合、各時間帯(「午前中」,「12:00〜14:00」…)の在宅確率において一番高い在宅確率「80%」を示す「午前中」を特定する。また、特定部6は、利用者U02に着目した場合、各時間帯の在宅確率において一番高い在宅確率「80%」を示す「12:00〜14:00」を特定する。
なお、特定部6は、上記の例では、各時間帯の在宅確率において相対的に高い在宅確率を特定しているが、かかる特定方法に限られない。特定部6は、例えば、「午前中」の在宅確率が「90%」であり、「12:00〜14:00」の在宅確率が「90%」である場合、同じ高い在宅確率において「午前中」を優先的に特定してもよい。つまり、特定部6は、同じ高い在宅確率が複数の時間帯で登録されている場合、一番早い時間帯を特定してもよい。
また、特定部6は、各時間帯の在宅確率が相対的に低い場合、時間帯を特定しないようにしてもよい。具体的には、特定部6は、例えば、各時間帯における在宅確率の合計値を時間帯の項目数で割った値が所定の閾値以下である場合、時間帯を特定しないようにしてもよい。例えば、特定部6は、利用者U07に着目して、閾値を20%とした場合、各時間帯における在宅確率の合計値が90%であり、かかる合計値(90%)を時間帯の項目数(6)で割った値が15%(閾値以下)であるので、利用者U07における時間帯を特定しない。
また、特定部6は、荷物データベース3に登録されている荷物の情報(図4参照)に基づいて各利用者U01,U02…による荷物の指定時間帯を特定する。例えば、特定部6は、利用者U04に着目した場合、「指定時間の有無」が「有」であることから「指定時間帯」に登録されている「午前中」を特定する。また、特定部6は、利用者U01に着目した場合、「指定時間の有無」が「無」であることから指定時間帯を特定しない。
次に、振分部7は、各利用者U01,U02…の各時間帯に基づいて配送車H01,H02…に積載する荷物#1,#2…を振り分ける(S13)。具体的には、振分部7は、特定した各利用者U01,U02…における在宅確率の高い時間帯および指定時間帯の情報、配送車H01,H02…の配送経路情報、および配送車H01,H02…を運転するドライバD01,D02…の評価情報に基づいて配送車H01,H02…に積載する荷物#1,#2…を振り分ける。
例えば、振分部7は、既述の図6に示すように、「拠点#01」、「拠点#03」においてそれぞれ「午前中」に届ける荷物#1,#3がある場合、「拠点#01」、「拠点#03」を配送経路に含む配送車H01,H02が選択され、かかる配送車H01,H02に荷物#1,#3を均等に振り分ける。また、振分部7は、「拠点#05」、「拠点#06」においてそれぞれ「14:00〜16:00」に届ける荷物#5,#6がある場合、同様に配送車H01,H02に荷物#5,#6を均等に振り分ける。
また、振分部7は、ドライバの評価情報(図5参照)に基づいて荷物#1,#3を配送車H01,H02に振り分ける。具体的には、振分部7は、例えば、荷物#1,#3の種類が「冷蔵・冷凍物」であり、配送先が「住宅街」であった場合、配送車H01のドライバの主な担当地域が「住宅街」であるため、かかる情報に基づいて優先的に配送車H01に荷物#1を振り分ける。そして、振分部7は、配送車H01に荷物#1を振り分けたあと、配送車H02に荷物#3を振り分ける。また、振分部7は、例えば、荷物#1,#3の種類が「冷蔵・冷凍物」であり、配送先が「繁華街」であった場合、配送車H02のドライバの主な担当地域が「繁華街」であるため、かかる情報に基づいて優先的に配送車H02に荷物#1を振り分ける。そして、振分部7は、配送車H02に荷物#1を振り分けたあと、配送車H01に荷物#3を振り分ける。
また、振分部7は、既述の図6に示すように、利用者U04において「指定時間帯」の項目に「午前中」が登録されているため、「在宅確率の高い時間帯」の項目に登録されている「12:00〜14:00」を選択せず、「指定時間帯」の項目に登録されている「午前中」を選択し、かかる選択に応じて配送車H01に荷物#4を振り分ける。つまり、この例では、「午前中」に届ける荷物は、「荷物#1」、「荷物#3」、および「荷物#4」であり、振分部7は、「拠点#01」、「拠点#03」、「拠点#04」を配送経路に含む配送車H01,H02に荷物#1,#3,#4を振り分けることになる。
また、振分部7は、既述の図6に示すように、利用者U07,U08において「在宅確率の高い時間帯」の項目に時間帯が登録(特定)されていないため、在宅確率が相対的に低い荷物#7,#8を「拠点#07」、「拠点#08」を配送経路に含む配送車H01,H02に均等に振り分ける。
次に、出力部8は、振分部7による振り分けに応じて荷物#1,#2…の積載の指示を積載装置200に対して出力する。具体的には、出力部8からネットワークNを介して指示信号を受信した積載装置200は、各利用者U01,U02…の各時間帯における在宅確率、配送車H01,H02…の配送経路情報、利用者U01,U02…による荷物#1,#2…の配送の指定時間、および配送車H01,H02…を運転するドライバの評価情報に基づいて振り分けた荷物#1,#2…を、この例では配送車01,H02に積載する(図1Aおよび図1B参照)。
このように、振分部7は、各利用者U01,U02…の各時間帯における在宅確率、配送車H01,H02…の配送経路情報、利用者U01,U02…による荷物#1,#2…の配送の指定時間、および配送車H01,H02…を運転するドライバの評価情報に基づいて配送車H01,H02…に積載する荷物#1,#2…を振り分ける。これにより、配送車による配送先への荷物の配送の効率化を図ることができる。また、振分部7は、振り分けた荷物に対応する拠点の情報(住所、位置座標など)を、在宅確率が高い時間帯の早い順に順列させることで配送経路情報を生成してもよい。
なお、上述した各利用者U01,U02…の各時間帯における在宅確率および荷物#1,#2…の配送先である拠点#01,#02…は、各利用者01,U02…が利用する端末装置100,101…の位置を示す位置情報の履歴から推定される。
かかる推定処理については、この例では、判定サーバ300によって実行される。以下、図8〜図12を用いて、実施形態に係る判定サーバ300が実行する推定処理および判定処理について説明する。
〔2.実施形態に係る判定サーバ300が実行する推定処理および判定処理について〕
以下、図を用いて、推定処理および判定処理を実現する判定サーバ300の機能構成及び作用効果の一例を説明する。
〔2−1.機能構成の一例〕
図8は、実施形態に係る判定サーバ300が有する機能構成の一例を説明する図である。図8に示すように、判定サーバ300は、通信部20、記憶部30、および制御部40を有する。通信部20は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部20は、ネットワークNと有線または無線で接続され、判定サーバ300と、配送処理装置10、および端末装置100との間で情報の送受信を行う。
記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。また、記憶部30は、位置履歴データベース31、推定結果データベース32、および在宅確率データベース33を有する。
位置履歴データベース31は、端末装置100が留まった位置の履歴を示す位置履歴情報が登録される。より具体的には、位置履歴データベース31には、端末装置100から収集された位置情報が位置履歴情報として登録される。
例えば、図9は、実施形態に係る位置履歴データベース31に登録される情報の一例を示す図である。図9に示す例では、位置履歴データベース31には、「端末ID(Identifier)」、「利用者ID」、「位置情報」、「収集時刻」、「端末情報」、および「通信機器情報」といった項目を有する位置履歴情報が登録される。なお、位置履歴データベース31には、図9に示す項目以外にも、任意の項目を有する位置履歴情報が登録されていてよい。
ここで、「端末ID」とは、GPS等の測位機能を用いて、対応付けられた位置情報を取得した端末装置100を示す識別子である。また、「利用者ID」とは、対応付けられた「端末ID」が示す端末装置100を使用している利用者を示す識別子である。また、「位置情報」とは、対応付けられた「端末ID」が示す端末装置100によって測定された端末装置100の位置を示す情報である。また、「収集時刻」とは、対応付けられた「位置情報」が測定された時刻、または、対応付けられた「位置情報」を端末装置100から収集した時刻である。
また、「端末情報」とは、対応付けられた「端末ID」が示す端末装置100に関する情報である。例えば、「端末情報」は、端末装置100の機種名や型番、端末装置100に対して割り当てられたIP(Internet Protocol)アドレス、MAC(Media Access Control)アドレス等である。また、例えば、「端末情報」は、OS(Operating System)、対応付けられた「位置情報」を収集したアプリケーション(例えば、防災速報アプリ、地図アプリなど)、「位置情報」を判定サーバ300へと送信したアプリケーション等の名称やバージョンを示す情報等である。すなわち、「端末情報」は、対応付けられた「端末ID」が示す端末装置100がどのような端末装置であるかを示す任意の情報が採用可能である。
また、「通信機器情報」とは、対応付けられた「端末ID」が示す端末装置100が、通信可能な通信機器(例えば、無線LAN親機、無線ルータなどとも呼ばれる)や、位置情報を判定サーバ300へと送信する際に用いた通信機器を示す情報である。例えば、「通信機器情報」は、端末装置100と通信機器との通信にあたり発生する通信の仕様や形式を含む諸元に関する情報であり、端末装置100が通信機器から取得しもしくは判定サーバ300の収集部41が通信部20を介して取得する。通信機器情報は、例えば、通信機器の機器名や型番、IP(Internet Protocol)アドレス、ポート番号、SSID(Service Set Identifier)等である。より具体的な例を挙げると、「通信機器情報」は、対応付けられた「端末ID」が示す端末装置100が、通信可能な通信機器等、拠点に設置されたアクセスポイントに関する各種の情報である。
例えば、図9に示す例では、位置履歴データベース31には、端末ID「ID101」、利用者ID「U01」、位置情報「位置#1」、収集時刻「2015/01/01/21:00:00」、端末情報「端末情報#1」、および通信機器情報「通信機器#1」が対応付けられた位置履歴情報が登録されている。このような位置履歴情報は、例えば、端末ID「ID101」が示す端末装置101が、利用者ID「U01」が示す利用者U01によって使用されている旨を示す。また、このような位置履歴情報は、端末装置101によって位置情報「位置#1」が収集時刻「2015/01/01/21:00:00」において収集された旨を示す。また、このような位置履歴情報は、端末装置101の端末情報が「端末情報#1」であり、端末装置101と通信可能な位置に設置された通信機器の通信機器情報が、通信機器情報「通信機器#1」である旨を示す。なお、端末装置101が、通信機器を介して位置情報等を判定サーバ300へと送信した場合、通信機器情報は、端末装置101から送信された位置情報を判定サーバ300へと転送した通信機器のIPアドレス等となる。
なお、図9に示す例では、「位置#1」、「端末情報#1」、「通信機器#1」といった概念的な値を記載したが、実施形態は、これに限定されるものではない。例えば、位置履歴データベース31には、「位置情報」として、GPSを用いて測定された北緯東経、緯度経度等の値が登録され、「端末情報」として、端末装置100の機種名や型番、OSの名称やバージョン等が登録され、「通信機器情報」として、通信機器のIPアドレスや通信機器が使用するSSID等が登録される。なお、図9に示す各項目のうち、判定サーバ300が収集することができなかった項目の情報については、登録が行われずともよい。
推定結果データベース32は、後述する推定処理による推定結果が登録される。より具体的には、推定結果データベース32には、推定された端末装置100と拠点との対応を示す推定結果情報が登録される。例えば、図10は、実施形態に係る推定結果データベース32に登録される情報の一例を示す図である。図10に示す例では、推定結果データベース32には、「拠点ID」、「位置情報」、「端末ID」、「利用者ID」、および「部屋番号」といった項目を有する推定結果情報が登録される。なお、推定結果データベース32には、図10に示す項目以外にも、任意の項目を有する推定結果情報が登録されていてよい。
ここで、「拠点ID」とは、利用者の活動の足場とする場所、すなわち、拠点とする場所を識別するための識別子である。ここで、拠点とは、例えば、利用者が居住している住宅のみならず、利用者が定期的に訪れる場所であれば、職場、仮設住宅、公園等といった所定の施設であってもよい。さらには、拠点は、位置を特定することができるのであれば、現実に存在する所定の地点等であってもよく、例えば、所定の職場の受付やビルの守衛所等であってもよい。すなわち、拠点とは、訪問者が利用者に会うことができる地点や、訪問を行うサービスにおいて訪問を行う単位となる場所であれば、任意の地点が採用可能である。
なお、図10に示す例では、拠点の一例として、各利用者が居住する部屋を採用した例について記載した。例えば、図10に示す「部屋番号」とは、対応付けられた「位置情報」が示す位置にある施設のうち、対応付けられた「利用者ID」が示す利用者が拠点とする部屋の番号を示す情報である。
例えば、図10に示す例では、推定結果データベース32には、拠点ID「拠点#1」、位置情報「位置#1」、端末ID「ID101、ID102」、利用者ID「U01、U02」、および部屋番号「R21」が対応付けられた推定結果情報が登録されている。このような推定結果情報は、拠点ID「拠点#1」が示す拠点が、位置情報「位置#1」に存在する施設にある部屋のうち、部屋番号「R21」が示す部屋であり、この部屋を、端末ID「ID101、ID102」が示す端末装置101、102を使用する利用者U01、U02が拠点としている旨を示す。
在宅確率データベース33は、後述する特定処理により、特定された在宅確率を示す在宅確率情報が登録される。より具体的には、在宅確率データベース33には、時間帯ごとに、各拠点に利用者が居る確率を示す在宅確率情報が登録される。例えば、図11は、実施形態にかかる在宅確率データベース33に登録される情報の一例を示す図である。図11に示す例では、在宅確率データベース33には、「拠点ID」と、各時間帯ごとに利用者が拠点に居る確率を対応付けた在宅確率情報が登録されている。
例えば、図11に示す例では、在宅確率データベース33には、拠点ID「拠点#1」が示す拠点に、「10:00〜11:00」の間利用者が居る確率「70%」が登録され、「11:00〜12:00」の間利用者が居る確率「80%」が登録されている。また、在宅確率データベース33には、拠点ID「拠点#2」が示す拠点に、「10:00〜11:00」の間利用者が居る確率「80%」が登録され、「11:00〜12:00」の間利用者が居る確率「20%」が登録されている。
図8に戻り、説明を続ける。制御部40は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等によって、判定サーバ300内部の記憶装置に記憶されている各種プログラムが、RAM等の記憶領域を作業領域として実行されることにより実現される。図8に示す例では、制御部40は、収集部41、推定部42、判定部43、特定部44、および情報提供部45を有する。
なお、制御部40が有する各処理部41〜45は、以下に説明するような推定処理や判定処理の機能・作用を実現・実行するものであるが、これらは説明のために整理した機能単位であり、実際のハードウェア要素やソフトウェアモジュールとの一致は問わない。すなわち、以下の推定処理や判定処理の機能・作用を実現・実行することができるのであれば、判定サーバ300は、任意の機能単位で推定処理や判定処理を実現・実行してよい。
〔2−2.推定処理および判定処理における作用効果の一例〕
以下、図12に示すフローチャートを用いて、各処理部41〜45が実行・実現する推定処理および判定処理の内容について説明する。図12は、実施形態に係る判定サーバが実行する推定処理および判定処理の流れの一例を説明するフローチャートである。
まず、収集部41は、各端末装置101〜104から位置情報を収集する(ステップS101)。例えば、端末装置100は、所定の時間間隔で位置情報を取得する。また、後述する説明で明らかとなるように、端末装置100は、位置情報以外にも、拠点を推定する際の指標となりうる各種の情報を収集する。例えば、端末装置100は、宅内に設けられた無線ルータのSSID等、拠点において端末装置100が通信を行う通信機器の通信機器情報を取得する。また、端末装置100は、例えば、所定のウェブサービスやアプリケーションにおける利用者の認証を介して、端末装置100を使用する利用者の利用者IDを取得する。そして、端末装置100は、端末装置100の端末ID、端末装置100を使用する利用者の利用者ID、取得した位置情報、位置情報を取得した日時、取得した通信機器情報、および端末装置100のOSやブラウザ等を示す端末情報を判定サーバ300へと送信する。この結果、収集部41は、取得した各種の情報を位置履歴情報として位置履歴データベース31に格納する(ステップS102)。
なお、収集部41は、位置情報以外の情報を、任意の手法で収集してもよい。例えば、収集部41は、端末装置100から位置情報を取得した場合、位置情報の送信元となる端末装置100に貸与やアドレス変換などにより対応付けられたIPアドレスや端末装置100が用いるMACアドレス等の識別情報をキーとして、端末装置100に対して移動通信網のサービスを提供するサーバ等から端末IDや端末装置100を使用する利用者の利用者IDを収集してもよい。また、例えば、収集部41は、所定のウェブサービス等を提供するために利用者のログインを受付ける受付サーバ等から、端末装置100を介してログインを行った利用者の利用者IDを収集してもよい。
また、収集部41は、端末装置100から位置情報を受信する際に取得可能な各種の情報から端末情報や通信機器情報を収集してもよい。例えば、収集部41は、端末装置100が情報を送信する際に付与するOSの名称やバージョンを端末情報として取得してもよい。また、収集部41は、拠点に配置された通信機器を介して位置情報が送信された場合、位置情報の送信元のIPアドレスやポート番号として、通信機器のIPアドレスやポート番号を取得可能である。そこで、収集部41は、位置情報の送信元となるIPアドレスやポート番号を通信機器情報として収集してもよい。
次に、推定部42は、位置履歴データベース31に登録された位置履歴情報から、各利用者が訪れた場所を特定する(ステップS103)。より具体的には、推定部42は、位置履歴データベース31に対応付けて登録された端末IDと位置情報との組を全て抽出することで、各端末装置100が留まった全ての場所を特定する。そして、推定部42は、各端末装置100が各場所に留まった量(以下、滞在量と記載する。)に基づいて、各端末装置100と拠点との対応を推定する(ステップS104)。より具体的には、推定部42は、端末装置100の滞在量に基づいて、その端末装置100を使用する利用者の拠点となる場所を特定し、特定した場所とその利用者が使用する端末装置100とを対応付ける。そして、推定部42は、推定結果を推定結果データベース32に登録する(ステップS105)。
例えば、推定部42は、位置履歴データベース31を参照し、端末装置101を示す端末ID「ID101」を含むすべての位置履歴情報を抽出する。そして、推定部42は、抽出した位置履歴情報に含まれる位置情報に基づいて、端末装置101を使用する利用者が訪れた場所を特定する。例えば、推定部42は、利用者が訪れた場所の住所や施設名等を特定する。続いて、推定部42は、抽出した位置履歴情報に含まれる収集時刻に基づいて、特定された場所に端末装置100や利用者が留まった滞在量を算出する。例えば、推定部42は、特定された場所ごとに、端末装置100があった回数、端末装置100が留まった時間の長さ、端末装置100が留まった時間帯の少なくともいずれか1つを算出する。すなわち、推定部42は、端末装置100を使用する利用者が訪れた場所を特定し、特定した場所に利用者が訪れた回数、滞在した期間、および滞在した時間帯の少なくともいずれか1つを滞在量として算出する。
そして、推定部42は、滞在量に基づいて、端末装置100と対応する拠点、すなわち、端末装置100を使用する利用者が住居とする拠点や業務を行う会社等の拠点を推定する。すなわち、推定部42は、いわば利用者が訪れる場所のヒートマップに基づいて、各拠点と利用者との対応を推定する。
例えば、日中の間に利用者が決まった場所を訪れている場合には、その場所もしくはその場所を含むエリアが利用者の職場であると予測される。また、例えば、夜間の間に利用者が決まった場所に長時間滞在している場合には、その場所が利用者の住宅であると予測される。また、利用者が専業主婦などである場合には、滞在時間が最も長い場所が利用者の住宅であると予測され、利用者が事務職等である場合には、滞在時間が最も長い場所が利用者の職場であると予測される。
このように、職場や住宅等、利用者が拠点とする場所を訪れる場合には、所定のパターンが生じると予測される。そこで、推定部42は、位置履歴情報に基づいて、利用者の滞在量(すなわち、端末装置100の滞在量)を算出し、算出した滞在量に基づいて、どの拠点がどの利用者の拠点であるか、すなわち、拠点と利用者との対応関係を推定することができる。
また、推定部42は、各端末装置100が留まった回数や時間的な量に基づいて、利用者の拠点を推定する。このため、例えば、推定部42は、端末装置100から取得される位置情報にある程度の誤差があり、取得される度に位置情報が示す位置が若干異なっているとしても、利用者が何度も訪れている地域や、利用者が長時間滞在している地域をその利用者の拠点として推定することができる。このため、推定部42は、端末装置100から取得される位置情報にある程度の誤差があったとしても、利用者の拠点を推定することができる。
ここで、集合住宅には、各利用者U01〜U04が居住する部屋R11,R12,R21が存在する(図10参照)。このような場合、各端末装置101〜104から収集する位置情報が似通ってしまうため、位置情報から各利用者U01〜U04の拠点を推定した場合、集合住宅を拠点として推定することは可能であるものの、各利用者U01〜U04がどの部屋R11,R12,R21を拠点としているか推定することができない場合がある。
そこで、推定部42は、位置情報に加えて、各端末装置100に関する端末装置情報や、各端末装置100と通信する通信機器に関する通信機器情報に基づいて、各端末装置101〜104と拠点との対応付けを推定することで、各利用者U01〜U04の拠点を推定する。
例えば、アパートやマンション等の集合住宅には、インターネット等のネットワークに接続するための通信機器が部屋ごとに設置され、通信機器ごとに異なるSSIDが付与されていると予測される。また、複数の商業施設が含まれるビル等においても、商業施設ごとに異なるSSIDにより識別可能な通信機器が設置される場合が多い。
例えば、部屋R21に設置された無線ルータと、部屋R11に設置された無線ルータとは、それぞれ異なるSSIDを使用すると考えられる。このため、通信機器が使用するSSIDと、通信機器が設置された部屋との対応を特定することができる場合には、端末装置100が通信可能な通信機器が使用するSSIDの情報は、集合住宅のうち、利用者が拠点とする部屋を特定するための指標となりうる。同じSSIDを用いる複数の端末装置100のうちの少なくとも一つについて、何らかのサービスにおけるユーザ登録の情報などで部屋が特定できている場合、同じSSIDを用いる全ての端末装置100について、その部屋との対応付けが可能である。
また、通信機器には、ネットワークN側から見た際にそれぞれ異なるグローバルIPアドレスが貸与されている場合がある。このような場合には、通信機器と通信可能な端末装置100には、ネットワークN側から見た際に、その通信機器に対して貸与されたIPアドレスとポート番号との組が貸与されることとなる。このため、端末装置100が通信可能な通信機器に対して貸与されたIPアドレスの情報は、集合住宅のうち、利用者がどの部屋R11,R12,R21を拠点としているかの指標となりえる。
なお、集合住宅等においては、各部屋R11,R12,R21に設置された全ての通信機器と接続された親機となる通信機器に対して1つのIPアドレスが貸与され(すなわち、集合住宅全体で1つのグローバルIPアドレスが貸与され)、各部屋に設置された通信機器については、ポート番号によりネットワークN側から指定が可能となる場合がある。このような場合において、端末装置100が部屋に設置された通信機器を介して位置情報を判定サーバ300へと送信した場合、判定サーバ300側では、送信元となる通信機器のIPアドレスおよびポート番号を用いることで、端末装置100がどの通信機器を介して位置情報を送信したかを特定することができる。このため、端末装置100が通信可能な通信機器に貸与されたIPアドレスやポート番号の情報は、集合住宅のうち、利用者がどの部屋R11,R12,R21を拠点としているかの指標となりえる。
また、集合住宅の各部屋に通信機器があらかじめ設置されていた場合を含め、インターネットサービスプロバイダ(ISP:Internet Services Provider)(以下、「プロバイダ」と記載する。)の選択や契約等は、部屋ごと(住居ごと)に利用者が行うこととなる。このように、通信機器が使用するSSID、IPアドレス、ポート番号、通信機器がネットワークNに接続する際に使用するプロバイダ等、通信機器に関する各種の情報は、プロバイダのシステムから集合住宅の部屋番号を含む契約住所の情報の提供を受けることにより、その通信機器と通信を行うことができる端末装置100の利用者が拠点とする部屋を特定する指標となりえる。
また、同一の会社に勤務する利用者には、会社から端末装置100が支給される場合があるが、このように会社から支給された端末装置100は、共通の機種が支給される場合が多い。また、異なる会社であれば、それぞれ異なる機種の端末装置100が支給されると予測される。このため、例えば、同一のビルに複数の会社が入居している場合、各利用者が使用する端末装置100の種別は、各利用者が勤務している会社、すなわち、各利用者が拠点としている会社を推定する指標となりえる。
また、端末装置100が実行するOS、ブラウザ、およびアプリケーション等のバージョンや型番は、端末装置100の機種に応じて異なる場合がある。このため、端末装置100の型番や端末装置100が実行するOS、ブラウザ、アプリケーション等のバージョンや型番は、同一の業務先を拠点とする利用者を特定する指標となりえる。また、同一の家庭や同一の会社を拠点とする複数の利用者は、同一のキャリアによる移動通信網のサービスを利用している可能性が高い。
そこで、収集部41は、通信機器のSSIDのみならず、通信機器のIPアドレスやポート番号、プロバイダの情報等を通信機器情報として収集する。また、収集部41は、各端末装置100のOS、ブラウザ、およびアプリケーション等のバージョンや型番、キャリア等を端末装置情報として収集する。そして、推定部42は、位置履歴に加えて、端末装置情報および通信機器情報の共通性や相違点等に基づいて、同じ場所に存在する複数の拠点から各端末装置100と対応する拠点を推定する。
また、推定部42は、各拠点ごとに、拠点ID、拠点IDが示す拠点の場所を示す位置情報、その位置情報が示す場所を拠点とする利用者が使用する端末装置100の端末ID、その位置情報が示す場所を拠点とする利用者の利用者IDとを対応付けた推定結果情報を生成する。そして、推定部42は、生成した推定結果情報を推定結果データベース32に登録する。
例えば、推定部42は、夜間の間、端末装置101〜104から取得した位置情報が集合住宅の位置を示す場合、各端末装置101〜104の利用者U01〜U04は、集合住宅を拠点としていると推定する。また、推定部42は、端末装置101、102から取得した通信機器情報が同じであり、端末装置103、104から取得した通信機器情報がそれぞれ異なる場合、端末装置101、102の利用者U01、U02は共通する部屋を拠点とし、端末装置103、104の利用者U03、U04はそれぞれ異なる部屋を拠点としていると推定する。
また、通信機器のIPアドレスやプロバイダ等からは、プロバイダが有する顧客情報等に基づいて、通信機器が設置されている部屋を特定することができる。例えば、プロバイダが顧客情報を管理する顧客情報管理サーバには、各通信機器に貸与されたIPアドレスの値や、各通信機器を使用する顧客情報等が登録されている。このような顧客情報には、各通信機器を使用する利用者の住所や利用者ID、各通信機器が設置された部屋の部屋番号を含む住所等が含まれている。
そこで、推定部42は、通信機器情報に含まれるプロバイダの顧客情報管理サーバが管理する情報を取得し、端末装置100から受信した通信機器情報に基づいて、端末装置100と通信可能な通信機器が設置されている部屋を特定する。例えば、収集部41は、端末装置100が通信可能な通信機器に貸与されたIPアドレスを、端末装置100から位置情報とともに収集する。また、他の例では、収集部41は、端末装置100が通信機器を介して位置情報を送信した場合、位置情報の送信元を示すIPアドレスやポート番号を、端末装置100が通信可能な通信機器のIPアドレスやポート番号として収集する。
一方、推定部42は、収集部41によって収集されたIPアドレスやポート番号を顧客情報管理サーバに通知する。このような場合、顧客情報管理サーバは、通知されたIPアドレスやポート番号が貸与されている通信機器を特定するとともに、特定した通信機器を使用する利用者と、特定した通信機器が設置されている部屋を顧客情報から特定する。そして、顧客情報管理サーバは、特定した利用者を示す利用者IDと特定した部屋を示す部屋番号とを判定サーバ300に送信する。このような場合、推定部42は、受信した利用者IDと部屋番号とを対応付けて推定結果データベース32に登録する。
ここで、顧客情報に含まれる利用者の住所は、利用者の拠点の住所であると考えられる。そこで、推定部42は、端末装置100から受信した利用者IDに基づいて、顧客情報管理サーバが管理する顧客情報から、端末装置100を使用する利用者の拠点を推定してもよい。例えば、推定部42は、端末装置100から受信した利用者IDを顧客情報管理サーバに通知する。このような場合、顧客情報管理サーバは、通知された利用者IDが示す利用者の顧客情報や、利用者が使用する通信機器の情報等を特定し、特定した顧客情報や通信機器の情報を判定サーバ300へと送信する。このような場合、推定部42は、受信した顧客情報に含まれる利用者の住所から、端末装置100を使用する利用者が拠点とする場所の位置情報や部屋番号等を特定し、特定した位置情報や部屋番号を利用者IDと対応付けて推定結果データベース32に登録する。
なお、判定サーバ300は、例えば、利用者U01が使用する端末装置101から、端末装置101が接続可能な通信機器のSSIDを含む通信機器情報や端末情報を収集し、収集した通信機器情報や端末情報から利用者U01の拠点が部屋R21である旨を推定した場合、通信機器のSSIDとその通信機器が設置された拠点である部屋R21との対応を推定したこととなる。そこで、推定部42は、収集した通信機器情報に含まれるSSIDと対応する拠点が推定済である場合には、その推定済の拠点を、通信機器情報の収集元となる端末装置100の拠点としてもよい。
この結果、例えば、推定部42は、端末装置101、102の利用者U01、U02が集合住宅の部屋R21を拠点とする旨を推定することができる。また、推定部42は、端末装置103の利用者U03が集合住宅の部屋R11を拠点とし、端末装置104の利用者U04が集合住宅の部屋R12を拠点としている旨を推定することができる。
なお、推定部42は、上述した処理以外にも、任意の手法を用いて、各利用者の拠点を推定する処理を実行してよい。上述したように、各通信機器に対して貸与されるIPアドレスやポート番号等の通信機器情報等、各通信機器が設置された部屋を特定するために用いられる情報は、端末装置100が通信機器から通信機器情報を収集する経路、判定サーバ300が端末装置100から位置情報を受信する経路、集合住宅内における各通信機器の接続構成等によって異なる。
そこで、収集部41は、SSIDや通信機器のIPアドレス等といった通信機器情報のみならず、端末装置100がネットワークNにアクセスする経路に関する取得可能な任意の情報等、端末装置100との通信において用いられる各種の情報を通信情報として収集してもよい。なお、このような場合には、通信機器情報は、通信情報の一部として収集されることとなる。そして、推定部42は、収集された通信情報に基づいて、端末装置100が通信可能な通信機器が設置されている拠点の推定を行ってもよい。また、推定部42は、端末装置100がネットワークNにアクセスする経路を示す情報に基づいて、通信情報のうち、拠点の推定に用いる情報を選択し、選択した情報に基づいて、拠点の推定を行ってもよい。
また、推定部42は、端末情報から利用者の拠点を推定してもよい。例えば、会社等が利用者に対して支給する端末装置100のキャリアが顧客情報を管理する管理サーバには、端末装置100の支給元となる会社の住所等といった会社情報や、端末装置100の機種や実行するソフトウェアの種別等が対応付けて登録されている。そこで、推定部42は、端末装置100から受信した位置情報と、端末装置100から受信した端末情報とをクエリとして管理サーバに送信する。すると、管理サーバは、クエリとして受信した位置情報と端末情報とに対応する会社情報を判定サーバ300に送信する。このような場合、推定部42は、受信した会社情報を、利用者の拠点を示す情報として推定結果データベース32に登録してもよい。
続いて、判定部43は、推定部42による推定結果に基づいて、訪問先となる拠点にその拠点と対応する端末装置100の利用者が居るか否かを判定する(ステップS106)。より具体的には、判定部43は、訪問先となる拠点、すなわち、荷物の配送先として指定された拠点に、その拠点と対応する端末装置100を使用する複数の利用者のうち、いずれかの利用者が居るか否かを判定する。そして、判定部43は、いずれかの利用者が拠点に居ると判定される場合には、その旨を配送処理装置10に送信する。
例えば、判定部43は、配送処理装置10等から配送先となる拠点の情報を受信する。このような場合、判定部43は、推定結果データベース32を参照し、配送先となる拠点の拠点IDと対応付けられた端末IDを抽出する。また、判定部43は、抽出した端末IDが示す端末装置100から受信した位置情報のうち、最新となる位置情報であって、取得されてから所定の時間が経過していない位置情報を位置履歴データベース31から検索する。
そして、判定部43は、検索結果として得られた位置情報が推定結果データベース32に含まれる拠点の位置と一致する場合には、利用者が拠点に居ると判定する。一方、判定部43は、検索結果として位置情報を得ることができなかった場合や、検索結果として得られた位置情報が推定結果データベース32に含まれる拠点の位置と一致しない場合には、利用者が拠点に居ないと判定する。そして、判定部43は、情報提供部45を介して、判定結果を配送処理装置10に送信する。
例えば、図10に示すように、拠点となる部屋R21には、利用者U01の端末装置101と利用者U02の端末装置102とが対応付けられ、拠点となる部屋R12には、利用者U04の端末装置104が対応付けられている。ここで、端末装置101から取得される位置情報が、集合住宅の位置情報と一致しない為、利用者U01が不在である旨を特定することができる。また、端末装置102から取得される位置情報が、集合住宅の位置情報と一致する(又は、所定の範囲内に位置する)ため、利用者U02が拠点に居る旨を特定することができる。
ここで、利用者U01宛ての荷物を配送する場合、部屋R21に利用者U01が居なくとも、部屋R21を拠点とする利用者U02が居る場合には、訪問して荷物を渡すことができる。このため、判定部43は、部屋R21を拠点とする利用者U01、U02のうち、いずれかの利用者(例えば、利用者U02)が居る場合には、訪問が可能である旨を判定する。一方、拠点となる部屋R12に、部屋R12を拠点とする利用者U04が居ない場合、判定部43は、部屋R12への訪問ができない旨を判定する。
このように、配送先となる拠点に複数の端末装置が対応付けられており、これらの端末装置のうちいずれかの端末装置が拠点と同じ場所にある場合には、その場所を拠点とする利用者のうちいずれかの利用者が拠点に居ると推定することができる。ここで、拠点に一人でも利用者が居る場合には、荷物の配送は可能である。そこで、判定部43は、配送先となる拠点と対応付けられた利用者のうち、いずれかの利用者がその拠点に居る場合には、配送可能であると判定する。
図12に戻り、説明を続ける。特定部44は、時間帯ごとに、各拠点に対応する利用者のいずれかが居る確率を算出する(ステップS107)。そして、特定部44は、端末装置100が対応する拠点に留まった履歴に基づいて、拠点に端末装置100の利用者が居る確率が所定の閾値よりも高い時間帯を特定する。その後、特定部44は、算出結果を在宅確率データベース33に登録する(ステップS108)。
例えば、特定部44は、推定結果データベース32から、拠点と利用者との対応を抽出する。そして、特定部44は、位置履歴データベース31を参照し、抽出した拠点に、その拠点と対応付けられた利用者が留まっていた確率を、時間帯ごとに算出する。例えば、特定部44は、「10:00〜11:00」までの間、利用者U01または利用者U02が部屋R21に居る確率を算出する。そして、特定部44は、時間帯ごとに算出した確率を在宅確率情報として在宅確率データベース33に登録する。
続いて、情報提供部45は、判定部43による判定結果を、特定部44によって特定された在宅確率情報と共に配送処理装置10に送信する(ステップS109)。より具体的には、情報提供部45は、推定部42による推定結果とともに、在宅確率データベース33に登録された在宅確率情報を、配送処理装置10へと送信する。
なお、各処理部41〜45は、それぞれ独立して、図12中の各ステップS101〜S108に示す処理を任意の粒度で分割して実行可能であるものとする。例えば、収集部41は、ステップS101、S102を所定の時間間隔で実行してよい。また、推定部42は、ステップS103〜S105に示す処理、すなわち、推定処理を所定の時間間隔で実行してよい。また、判定部43は、ステップS106に示す所定、すなわち、判定処理を、所定の時間間隔で実行してもよく、配送処理装置10から要求を受けた際に実行してもよい。また、特定部44は、ステップS107、S108に示す処理、すなわち、特定処理を所定の時間間隔で実行してもよい。
[2−3.判定サーバにおける変形例]
上述した実施形態に係る判定サーバ300は、上記実施形態以外にも種々のことなる形態にて実施されてもよい。そこで、上記の判定サーバ300の他の実施形態について説明する。
〔2−4.拠点の変更について〕
上述した説明では、判定サーバ300は、各拠点と各利用者U01〜U04との対応を推定した。しかしながら、利用者U01〜U04によっては、時間帯ごとに拠点が変化する場合がある。例えば、利用者は、日中の間は会社が拠点となり、夜間の間は住宅が拠点となる場合がある。また、例えば、個人事業主等は、日中の間は拠点がなく、夕方や夜間の時間帯の間は会社が拠点となる場合がある。そこで、判定サーバ300は、位置情報が取得された時間帯に基づいて、利用者の拠点を時間帯ごとに推定してもよい。
例えば、判定サーバ300は、日中の時間帯は、利用者U04の勤務先等を利用者U04の拠点として推定し、夜間の時間帯は、部屋R12を利用者U04の拠点として推定する。そして、判定サーバ300は、日中の間は、部屋R12を拠点とする利用者が居ないと判定してもよい。また、判定サーバ300は、訪問を行う時間帯における利用者U04の拠点を特定し、特定した拠点を、訪問先として特定してもよい。また、判定サーバ300は、日中の時間帯は、部屋R12が利用者U04の拠点ではないと判定し、部屋R12を宛先とする荷物の配送が行えないと判定してもよい。
〔2−5.利用者の特定について〕
また、判定サーバ300は、任意の手法で端末装置100を使用する利用者の特定を行ってよい。例えば、判定サーバ300は、端末装置101を使用する利用者が利用者U01である旨の事前登録を受付けてもよく、例えば、端末装置101のキャリアから利用者U01に関する情報を取得してもよい。また、判定サーバ300は、オークションサイト等に端末装置101を用いて利用者U01がログインした際に、利用者U01がログインに用いた情報や利用者U01が予め登録した登録認証情報等をオークションサイト等から取得してもよい。また、判定サーバ300は、これらの情報を、各種情報を管理するサーバ装置から取得してもよく、端末装置101から取得してもよい。
また、例えば、判定サーバ300は、端末装置100からの識別情報に基づいて、端末装置100を使用する利用者の特定を行ってもよい。例えば、端末装置100は、オークションサイト等のログイン時に、利用者が入力した登録認証情報等を記憶しておき、記憶した登録認証情報を位置情報とともに判定サーバ300へ送信することで、端末装置100を使用する利用者を通知してもよい。すなわち、判定サーバ300は、位置履歴情報として登録される端末ID、利用者ID、端末情報、および通信機器情報については、任意の手法により収集してよい。
また、判定サーバ300は、全ての利用者と端末装置100との対応を特定しておく必要はない。例えば、判定サーバ300は、荷物の配送サービス等、訪問先に居る利用者が荷物の受取人本人ではなくともよい場合には、利用者と端末装置100との対応を特定せずともよく、一部の利用者と端末装置100との対応のみを特定してもよい。すなわち、判定サーバ300は、端末装置100とその端末装置100を使用する利用者の拠点との対応、すなわち、端末装置100と拠点との対応のみを推定することができれば、端末装置100の有無に基づいて、各拠点に訪問することができるか否かを判定してもよい。このような処理をする場合、例えば、判定サーバ300は、図10に示す推定結果データベース32のうち、「利用者ID」については、特定や登録を行わずともよい。
〔2−6.SSIDについて〕
また、上述した説明では、判定サーバ300は、端末装置100がGPS等の測位手段を用いて取得した位置情報を位置履歴情報とした。しかしながら、実施形態は、これに限定されるものではない。例えば、判定サーバ300は、SSID等の通信機器情報を用いて、端末装置100の位置を特定してもよい。例えば、判定サーバ300は、通信機器に設定されたSSID、IPアドレス、MACアドレス、ポート番号等を通信機器が設置された位置と対応付けて記憶する。そして、判定サーバ300は、端末装置100から通信機器情報を受付けた場合には、通信機器情報と対応付けられた位置を特定し、特定した位置を端末装置100の位置としてもよい。
[3.効果]
上述したように、配送処理装置10は、振分部7と、出力部8とを備える。振分部7は、荷物の配送先である拠点に対応する各利用者の各時間帯における在宅確率に基づいて配送車に積載する荷物を振り分ける。出力部8は、振分部7による振り分けに応じて荷物の積載の指示を出力する。これにより、配送処理装置10は、配送車による配送先への荷物の配送の効率化を図ることができる。
また、配送処理装置10において、振分部7は、各時間帯における在宅確率と配送車の配送経路情報とに基づいて荷物を振り分ける。これにより、配送処理装置10は、より最適な配送車に荷物を配送させることができる。
また、配送処理装置10において、振分部7は、各時間帯における在宅確率と各利用者による荷物の配送の指定時間とに基づいて荷物を振り分ける。これにより、配送処理装置10は、配送車に対して各利用者の希望に応じた時間帯に荷物を届けさせることができる。
また、配送処理装置10において、振分部7は、各時間帯における在宅確率と配送車を運転するドライバの評価情報とに基づいて荷物を振り分ける。これにより、配送処理装置10は、配送能力の高いドライバに対して優先的に荷物を振り分けることができる。
また、配送処理装置10において、振分部7は、同じ配送時間帯にあり、かつ、在宅確率が相対的に高い荷物が複数ある場合、複数の荷物が分散されるように複数の配送車に対して荷物を振り分ける。これにより、配送処理装置10は、配送の負担を複数の配送車に分散させることができる。
また、配送処理装置10において、振分部7は、在宅確率が相対的に低い荷物が複数ある場合、複数の荷物が分散されるように複数の配送車に対して荷物を振り分ける。これにより、配送処理装置10は、配送の負担を複数の配送車に分散させることができる。
また、配送処理装置10において、振分部7は、振り分けた荷物に対応する拠点の情報を、在宅確率が高い時間帯の早い順に順列させることにより配送経路情報を生成する。これにより、配送処理装置10は、配送車に対してより最適な経路で荷物を配送させることができる。
また、配送処理装置10において、出力部8は、配送車に荷物を積載する積載装置200に対して振分部7による振り分けに応じて荷物の積載の指示を出力する。これにより、配送処理装置10は、配送車への荷物の積載を自動で行うことができる。
また、積載装置200は、単一の移動体に対する荷物排出位置を複数備え、出力部8は、荷物を、在宅確率が高い時間帯の早い順または配送経路情報の順のまとまり毎に、複数の荷物排出位置のいずれかに排出させるように積載装置200に対して指示を出力する。これにより、積載装置200の荷物排出位置から排出された荷物をロボットなり人間の配送員などが配送車に効率よく積み込むことができる。
また、配送処理装置10において、各利用者の各時間帯における在宅確率および荷物の配送先である拠点は、各利用者が利用する端末装置の位置を示す位置情報の履歴から推定される。これにより、配送処理装置10は、各利用者の各時間帯における在宅確率および荷物の配送先である拠点を高い精度で得ることができる。
また、判定サーバ300は、端末装置100の位置を示す位置情報の履歴である位置履歴情報から、端末装置100と拠点との対応を推定する。そして、判定サーバ300は、推定結果に基づいて、訪問先となる拠点にその拠点と対応する端末装置100の利用者が居るか否かを判定する。
また、判定サーバ300は、端末装置100や端末装置100を使用する利用者と、その利用者の拠点との対応が予め登録されていなくとも、拠点と利用者とを紐付けすることができる。この結果、判定サーバ300は、事前登録無しで、利用者が訪問先となる拠点に居るか否かを容易に判定することができる。また、判定サーバ300は、各種の訪問サービスにおける空振りの防止や再訪問の回数を削減するので、採算の改善を実現することができる。また、判定サーバ300は、利用者と紐付けることができるのであれば、任意の場所を拠点とすることができるので、例えば、住所不定の利用者に対しても、配送サービス等といった訪問サービスを提供させることができる。
また、判定サーバ300は、位置履歴情報が示す各位置に端末装置100が留まった量に基づいて、端末装置100と対応する拠点を推定する。例えば、判定サーバ300は、端末装置100が留まった量として、端末装置100が留まった回数、端末装置100が留まった時間の長さ、および、端末装置100が留まった時間帯の少なくともいずれか1つに基づいて、端末装置100と対応する拠点を推定する。
このため、判定サーバ300は、各端末装置100の利用者が本当に拠点としている場所を特定することができる。例えば、判定サーバ300は、利用者が滞在した時間が長い程、その場所が利用者の拠点であるという信頼性を高めることができる。このような処理を実行した場合、訪問先に長時間滞在した利用者、すなわち、訪問先を本当に拠点としている利用者を推定することができる。この結果、判定サーバ300は、例えば、訪問先を拠点としていないにも関わらず、訪問先に忍び込んだり、訪問先の玄関先で待機するなどして、訪問先を拠点としているふりをした利用者に荷物を受け渡してしまうといった事態を防ぐことができる。
また、判定サーバ300は、位置履歴情報に加えて、端末装置100に関する端末装置情報に基づいて、同じ場所に存在する複数の拠点からその端末装置100と対応する拠点を推定する。また、判定サーバ300は、位置履歴情報に加えて、拠点において端末装置100と通信する通信機器に関する通信機器情報に基づいて、同じ場所に存在する複数の拠点からその端末装置100と対応する拠点を推定する。このため、判定サーバ300は、集合住宅にある各部屋R11〜R21等、同じ場所にある複数の拠点と各利用者との対応を適切に推定することができる。
また、判定サーバ300は、訪問先となる拠点と対応する端末装置100を使用する複数の利用者のうち、いずれかの利用者がその拠点に居るか否かを判定し、いずれかの利用者が居ると判定した場合には、その拠点に利用者が居ると判定する。このため、例えば、判定サーバ300は、宛先となる利用者本人が居ない場合であっても、その利用者の家族等に荷物の受渡しを行うことができるか否か判定することができる。
また、判定サーバ300は、荷物の配送先として指定された拠点に、その拠点と対応する端末装置100の利用者が居るか否かを判定する。このため、判定サーバ300は、判定結果に基づいて、配送サービスにおける訪問の空振りや再訪問の回数を削減することができる。
また、判定サーバ300は、端末装置100が対応する拠点に留まった履歴に基づいて、その拠点に端末装置100の利用者が居る可能性が所定の閾値よりも高い時間帯を特定する。
[4.ハードウェア構成]
上述してきた実施形態に係る配送処理装置10は、例えば、図13に示すような構成のコンピュータ400によって実現される。以下、配送処理装置10を例に挙げて説明する。図13は、配送処理装置10の機能を実現するコンピュータ400の一例を示すハードウェア構成図である。コンピュータ400は、CPU410、RAM420、ROM430、HDD440、通信インターフェイス(I/F)450、入出力インターフェイス(I/F)460、およびメディアインターフェイス(I/F)470を有する。
CPU410は、ROM430またはHDD440に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM430は、コンピュータ400の起動時にCPU410によって実行されるブートプログラムや、コンピュータ400のハードウェアに依存するプログラム等を格納する。
HDD440は、CPU410によって実行されるプログラム、および、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス450は、ネットワークNを介して他の機器からデータを受信してCPU410へ送り、CPU410が生成したデータを、ネットワークNを介して他の機器へ送信する。
CPU410は、入出力インターフェイス460を介して、ディスプレイやプリンタ等の出力装置、および、キーボードやマウス等の入力装置を制御する。CPU410は、入出力インターフェイス460を介して、入力装置からデータを取得する。また、CPU410は、生成したデータを、入出力インターフェイス460を介して出力装置へ出力する。
メディアインターフェイス470は、記録媒体480に格納されたプログラムまたはデータを読み取り、RAM420を介してCPU410に提供する。CPU410は、かかるプログラムを、メディアインターフェイス470を介して記録媒体480からRAM420上にロードし、ロードしたプログラムを実行する。記録媒体480は、例えばDVD(Digital Versatile Disk)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ400が実施形態に係る配送処理装置10として機能する場合、コンピュータ400のCPU410は、RAM420上にロードされたプログラムを実行することにより、制御部13の機能を実現する。また、HDD440には、記憶部12内のデータが格納される。コンピュータ400のCPU410は、これらのプログラムを記録媒体480から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
[5.その他]
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動で行うこともできる、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上記実施形態では、判定サーバ300において推定処理や判定処理の機能・作用を実現・実行しているが、配送処理装置10に判定サーバ300が有する推定処理や判定処理の機能・作用を持たせ、配送処理装置10において推定処理や判定処理の機能・作用を実現・実行してもよい。
また、上述してきた各実施形態に記載された各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
例えば、上述した配送処理装置10は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットホーム等をAPI(Application Programming Interface)やネットワークコンピューティング等で呼び出して実現するなど、構成は柔軟に変更できる。
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、振分部は、振分手段や振分回路に読み替えることができる。また、本実施形態は配送車に限らず、ドローンその他の移動体にも適用し得る。また、荷物は、梱包物、郵便、ハガキなど種類は問わない。また、拠点と利用者の対応は居住に限らず、勤務、滞在その他の対応でもよい。