JP7274558B1 - 情報処理装置、システム、及び、方法 - Google Patents

情報処理装置、システム、及び、方法 Download PDF

Info

Publication number
JP7274558B1
JP7274558B1 JP2021200682A JP2021200682A JP7274558B1 JP 7274558 B1 JP7274558 B1 JP 7274558B1 JP 2021200682 A JP2021200682 A JP 2021200682A JP 2021200682 A JP2021200682 A JP 2021200682A JP 7274558 B1 JP7274558 B1 JP 7274558B1
Authority
JP
Japan
Prior art keywords
inventory
product
ordered
information
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021200682A
Other languages
English (en)
Other versions
JP2023086281A (ja
Inventor
大貴 田中
敏明 田爪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rakuten Group Inc
Original Assignee
Rakuten Group Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rakuten Group Inc filed Critical Rakuten Group Inc
Priority to JP2021200682A priority Critical patent/JP7274558B1/ja
Application granted granted Critical
Publication of JP7274558B1 publication Critical patent/JP7274558B1/ja
Publication of JP2023086281A publication Critical patent/JP2023086281A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】注文された個数よりも多い個数、注文された商品を移動機に積載させる指示を行うことができる情報処理装置、システム、及び、方法を提供する。【解決手段】情報処理装置100は、在庫毎に質と量との少なくとも1つが異なる商品が注文された場合、注文された個数である注文個数よりも多い積載個数、注文された商品である注文商品の在庫を移動機に積載させる指示を行う指示部120を備える。【選択図】図4

Description

本発明は、情報処理装置、システム、及び、方法に関する。
従来、無人運送車に商品を配送させるシステムが知られている(例えば、特許文献1)。
特開2019-074926号公報
しかし、特許文献1のシステムでは、例えば、無人運送車を含む移動機に、注文された商品を注文された個数だけ積載するように指示することしかせず、注文された個数よりも多く積載するように指示できないという問題があった。
そこで、本発明は、このような点に鑑み、その目的とするところは、注文された個数よりも多い個数、注文された商品を移動機に積載させる指示を行うことができる情報処理装置、システム、及び、方法を提供することにある。
上記目的を達成するため、本発明の第1の観点に係る情報処理装置は、
在庫毎に質と量との少なくとも1つが異なる商品が注文された場合、注文された個数である注文個数よりも多い積載個数、注文された前記商品である注文商品の在庫を移動機に積載させる指示を行う指示部、
を備える。
本発明に係る情報処理装置、システム、及び、方法によれば、注文された個数よりも多い個数、注文された商品を移動機に積載させる指示を行うことができる。
本発明の実施例1に係る情報処理システムの一構成例を表すシステム構成図である。 情報処理装置の一構成例を表すハードウェア構成図である。 情報処理装置が実行する注文受付処理の一例を表すフローチャートである。 情報処理装置が有する機能の一例を表す機能ブロック図である。 情報処理装置が記憶するユーザテーブルの一例を表す図である。 情報処理装置が記憶する商品テーブルの一例を表す図である。 商品の在庫の一例を表す図である。 商品のウェブ頁の一例を表す図である。 情報処理装置が記憶する配送予定テーブルの一例を表す図である。 情報処理装置が記憶する配送商品テーブルの一例を表す図である。 実施例1に係る情報処理装置が実行する移動制御処理の一例を表すフローチャートの前半部である。 実施例1に係る情報処理装置が実行する移動制御処理の一例を表すフローチャートの後半部である。 情報処理装置が実行する積載個数設定処理の一例を表すフローチャートである。 実施例1に係る移動機の一外観例を表す外観構成図である。 実施例1に係る移動機が備える箱体の一外観例を表す外観構成図である。 移動機が備える情報処理装置の一構成例を表すハードウェア構成図である。 移動機が実行する移動処理の一例を表すフローチャートである。 移動機が実行する受渡処理の一例を表すフローチャートである。 実施例1の変形例13に係る移動機が備える箱体の一外観例を表す外観構成図である。 実施例1の変形例17に係る移動機の一外観例を表す外観構成図である。 移動機が備える施錠状態のフックの一例を表す図である。 移動機が備える解錠状態のフックの一例を表す図である。 実施例2に係る移動機が備える箱体の一外観例を表す外観構成図である。 実施例2又は実施例2の変形例5に係る情報処理装置が実行する移動制御処理の一例を表すフローチャートの前半部である。 実施例2に係る情報処理装置が実行する移動制御処理の一例を表すフローチャートの後半部である。 情報処理装置が記憶するボックステーブルの一例を表す図である。 情報処理装置が実行する決済処理の一例を表すフローチャートである。 実施例2の変形例5に係る情報処理システムの一構成例を表すシステム構成図である。 実施例2の変形例5に係る情報処理装置が実行する移動制御処理の一例を表すフローチャートの後半部である。 情報処理装置が実行する販売処理の一例を表すフローチャートである。
<実施例1>
以下、本発明の実施例1について添付図面を参照しつつ説明する。
本発明の実施例1に係る情報処理システム1は、電子市場に出店された仮想店舗に対する商品の注文を受け付け、注文された商品を販売し、販売された商品の配送を制御する、図1に示すような情報処理装置100を備える。
本実施例では、仮想店舗で販売される商品の在庫は、実店舗に保管されている。実店舗に保管されている商品の在庫は、仮想店舗だけでなく実店舗でも販売される。本実施例では、仮想店舗に対する商品の注文は、当該商品の販売を求める販売要求と、当該商品の配送を求める配送要求と、を含んでいる。このため、情報処理システム1は、仮想店舗に対する注文に基づいて販売された商品の配送を行うため、販売された商品の在庫を、図1に示すような格納ボックス621に積載した状態で、実店舗から配送先まで移動する移動機600を備える。また、情報処理システム1は、仮想店舗のユーザに携帯される端末装置700を備える。
情報処理装置100は、例えば、サーバ機であり、例えば、実店舗のバックヤードに設置されている。情報処理装置100は、ハードウェアである、図2に表すようなCPU(Central Processing Unit)101、RAM(Random Access Memory)102、ROM(Read Only Memory)103a、ハードディスク103b、データ通信回路104a、ビデオカード105a、ディスプレイパネル105b、及び、入力装置105cを備える。情報処理装置100は、複数のCPUを備えても良いし、複数のRAM及びフラッシュメモリを備えても良い。
情報処理装置100のCPU101は、ROM103a又はハードディスク103bに保存されたプログラムを実行することで、情報処理装置100の全体制御を行う。RAM102は、CPU101によるプログラムの実行時において、処理対象とされるデータを一時的に記憶する。ROM103a及びハードディスク103bは、各種のプログラムと、プログラムの実行に用いられる各種のデータ及びデータが保存されたテーブルと、を記憶している。
情報処理装置100のデータ通信回路104aは、NIC(Network Interface Card)であり、例えば、LTE(Long Term Evolution)及び5G(5th Generation)を含む通信規格に従って、例えば、インタネットINに接続された不図示の基地局と電波を用いてデータ通信を行う。これにより、情報処理装置100のデータ通信回路104aは、インタネットINに接続された移動機600及び端末装置700とデータ通信を行う。
情報処理装置100のビデオカード105aは、CPU101から出力されたデジタル信号に基づいて画像をレンダリングすると共に、レンダリングされた画像を表す画像信号を出力する。ディスプレイパネル105bは、EL(Electroluminescence)ディスプレイ、PDP(Plasma Display Panel)、又は、LCD(Liquid Crystal Display)であり、ビデオカード105aから出力された画像信号に従って画像を表示する。入力装置105cは、キーボード、マウス、タッチパッド、及び、ボタンの少なくとも1つであり、仮想店舗及び実店舗を経営する企業の従業員の操作に応じた信号を出力する。
仮想店舗で商品を購入するために、端末装置700のユーザが、仮想店舗に対する商品の注文に用いられるアプリケーション(以下、注文アプリという)を実行させるための操作を端末装置700に行うと、端末装置700は、当該操作に従って注文アプリの実行を開始する。その後、端末装置700は、ユーザの操作に従って、当該ユーザの認証情報を含み、かつ、ユーザ認証を行うことを求める認証要求を情報処理装置100へ送信する。ユーザの認証情報は、当該ユーザを識別するユーザID(IDentification)「U1」と、当該ユーザが予め設定したパスワードを表す情報と、を含む。
情報処理装置100のデータ通信回路104aが認証要求を端末装置700から受信すると、情報処理装置100のCPU101は、認証要求に基づいてユーザ認証を行い、ユーザ認証が成功した場合に商品の注文を受け付ける、図3に示すような注文受付処理を実行する。これにより、CPU101は、図4に示すような、認証要求を取得する取得部110として機能し、取得された認証要求に基づいて認証が成功したか否かを判別する制御部130として機能する。情報処理装置100のハードディスク103bは、各種の情報を記憶する情報記憶部190として機能する。
情報処理装置100の情報記憶部190は、注文を行うユーザに関する情報が保存されている、図5に示すようなユーザテーブルを予め記憶している。ユーザテーブルには、複数のレコードが予め保存されている。ユーザテーブルの各レコードには、ユーザを識別するユーザIDと、当該ユーザが予め設定したパスワードを表す情報と、当該ユーザが予め指定した配送先の位置を緯度、経度、及び、高度で表す位置情報と、当該ユーザが金銭の支払いに用いる支払情報と、が予め対応付けられて保存されている。本実施例では、支払情報は、ユーザが金銭の支払いに用いるクレジットカードのカード番号を表す情報と、当該クレジットカードの有効期限を表す情報と、当該ユーザの氏名を表す情報と、の少なくとも1つを含むが、これに限定される訳では無い。
また、情報処理装置100の情報記憶部190は、商品に関する情報が予め保存されている、図6に示すような商品テーブルを予め記憶している。商品テーブルには、複数のレコードが予め保存されている。商品テーブルの各レコードには、商品を識別する商品IDと、当該商品の名称を表す情報と、当該商品の注文に用いられるウェブ頁の所在を表すURL(Uniform Resource Locator)と、当該商品の在庫の重量が均一性を有するか否かを表す均一性フラグと、当該商品の価格を表す情報と、が予め対応付けられて保存されている。
本実施例では、商品の商品IDは、仮想店舗及び実店舗で販売される商品を識別する番号であり、かつ、仮想店舗及び実店舗を経営する企業が当該商品に割り当てた番号である。本実施例では、仮想店舗では、商品ID「G1」から「G3」でそれぞれ識別される不図示の商品G1からG3を含む複数の商品が販売される場合を具体例として挙げて以下の説明を行う。
また、本実施例では、商品G1の在庫として、図7に示すような在庫SK11と在庫SK12とを含む複数の在庫が実店舗に存在する場合を具体例として挙げて以下の説明を行う。在庫SK11と、在庫SK12と、は、それぞれ商品G1の在庫であるので、それぞれ商品ID「G1」で識別され、在庫SK11の名称と在庫SK12の名称とは、「肩ロース牛肉」である。これに対して、在庫SK11の重量は「1,010g」であり、在庫SK12の重量は「1,020g」であり、互いに異なっている。また、在庫SK11の価格は「5,050円」であり、在庫SK12の価格は「5,100円」である。商品G1の「1g」当たりの価格が「5円」だからである。
また、本実施例では、商品G1のウェブ頁は、図8に示すような商品G1を説明する説明文と、商品G1のサンプル画像と、を含んでいる。商品G1を説明する説明文は、商品G1の重量の目安「1kg」を表す文字列「約1kg」と、商品G1の価格の目安「5,000円」を表す文字列「約5,000円」と、を含んでいる。商品G1の重量の目安「1kg」を表す文字列が商品G1のウェブ頁に含まれるのは、本実施例では、在庫SK11及びSK12を含む商品G1の複数の在庫は、予め定められた上限以下の重量だけ、商品G1の重量の目安「1kg」よりも重くなるように、例えば、実店舗の作業場で加工されるためである。本実施例では、予め定められた上限は「50g」であるが、これに限定される訳では無い。予め定められた上限は、正の値であれば、どのような値であっても良く、当業者は、実験により好適な値を予め定めることができる。
本実施例では、実店舗の従業員は、商品G1の在庫SK11を、予め定められた上限「50g」以下の重量だけ、商品G1の重量の目安「1kg」よりも重くなるように加工した後、不図示の計量ラベルプリンターに、単位重量当たりの商品G1の価格「5円」を入力する操作を行う。その後、従業員は、計量ラベルプリンターを用いて在庫SK11の重量を計測する。次に、従業員は、在庫SK11を、例えば、発泡スチレン製のトレーに入れ、在庫SK11とトレーとを透明なラップフィルムで包むことで、在庫SK11を密封する。その後、従業員は、計量ラベルプリンターからラベルを取得し、取得されたラベルを在庫SK11に巻き付けられたラップフィルムに貼付する。本実施例では、計量ラベルプリンターから出力されるラベルには、在庫SK11の商品ID「G1」又は名称「肩ロース牛肉」と、計量ラベルプリンターで計測された在庫SK11の重量「1,010g」と、在庫SK11の価格「5,050円」と、が印字されている。在庫SK11の価格「5,050円」は、計測された重量「1,010g」及び単位重量当たりの商品G1の価格「5円」に基づいて計量ラベルプリンターで算出される。
商品G1のサンプル画像は、商品G1の在庫SK11及びSK12を、個々に撮像することで得られた画像ではなく、商品G1の広告又は宣伝のために、実店舗及び仮想店舗で販売される在庫と同様に加工された、又は、似た外観となるように加工されたサンプルを撮像することで得られた画像である。このため、商品G1のサンプル画像は、ラベルに対応する画像領域を含まない。
これらのため、本実施例では、商品G1のウェブ頁には、商品G1の在庫SK11の重量「1,010g」を表す情報及び価格「5,050円」を表す情報、並びに、商品G1の在庫SK12の重量「1,020g」を表す情報及び価格「5,100円」を表す情報が含まれていない。これに対して、商品G1のウェブ頁には、商品G1の重量の目安「1kg」を表す情報と、商品G1の価格の目安「5,000円」を表す情報と、を含んでいる。このため、商品G1の在庫SK11及びSK12を含む複数の在庫は、重量及び価格について、表示形態が同一である商品G1のウェブ頁を用いて注文されるが、実際には、在庫毎に重量及び価格が異なる。
また、本実施例では、商品G2の複数の在庫が実店舗に存在する。商品G2の複数の在庫は、それぞれ商品ID「G2」で識別され、それぞれの名称は、「サーロイン牛肉」であるが、商品G2の複数の在庫の重量及び価格は、互いに異なっている。商品G2の不図示のウェブ頁は、商品G2を説明する説明文を含んでおり、商品G2を説明する説明文は、商品G1を説明する説明文と同様に、商品G2の重量の目安を表す文字列と、商品G2の価格の目安を表す文字列と、を含んでいる。このため、商品G2の複数の在庫は、重量及び価格について、表示形態が同一である商品G2のウェブ頁を用いて注文されるが、実際には、在庫毎に重量及び価格が異なる。
また、本実施例では、商品G3の複数の在庫が実店舗に存在する。商品G3の複数の在庫は、それぞれ商品ID「G3」で識別され、それぞれの名称は、「塩」である。また、商品G3の複数の在庫の重量は、互いに同じ重量「300g」である。商品G3の複数の在庫が、互いに同じであるのは、商品G3の在庫は、実店舗で加工されるのではなく、例えば、工場で加工されるためである。
このため、本実施例では、商品G3の複数の在庫の価格は、それぞれ同じ価格「300円」である。商品G3の不図示のウェブ頁は、商品G3を説明する説明文を含んでおり、商品G3を説明する説明文は、商品G3の重量「300g」を表す文字列と、商品G3の価格「300円」の表す文字列と、を含んでいる。このため、商品G3の複数の在庫は、重量及び価格について、表示形態が同一である商品G3のウェブ頁を用いて注文され、かつ、実際に、在庫毎に重量及び価格が同一である。
本実施例では、図6に示すような商品テーブルの1番目のレコードに、商品G1を識別する商品ID「G1」と、商品G1の名称「肩ロース牛肉」を表す情報と、商品G1のウェブ頁のURL「./G1.html」を表す情報と、商品G1の在庫の重量が均一性を有さないことを表す値「false」の均一性フラグと、商品G1の単位重量当たりの価格「5円/g」を表す情報と、が対応付けられて保存されている。本実施例において、商品G1の在庫の重量が均一性を有さないとは、在庫毎に重量が異なることを意味する。すなわち、商品G1の在庫の重量が均一性を有さないとは、商品G1の在庫が実店舗に複数存在する場合、当該複数の在庫の重量がそれぞれ異なることを意味する。
また、本実施例では、商品テーブルの2番目のレコードに、商品G2の商品ID「G2」と、商品G2の名称「サーロイン牛肉」を表す情報と、商品G2のウェブ頁のURL「./G2.html」を表す情報と、商品G2の在庫の重量が均一性を有さないことを表す値「false」の均一性フラグと、商品G2の単位重量当たりの価格「10円/g」を表す情報と、が対応付けられて保存されている。
さらに、本実施例では、商品テーブルの3番目のレコードに、商品G3の商品ID「G3」と、商品G3の名称「塩」を表す情報と、商品G3のURL「./G3.html」を表す情報と、商品G3の在庫の重量が均一性を有することを表す値「true」の均一性フラグと、商品G3の価格「300円」を表す情報と、が対応付けられて保存されている。本実施例において、商品G3の在庫の重量が均一性を有するとは、在庫毎に重量が同じであることを意味する。すなわち、商品G3の在庫の重量が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫の重量がそれぞれ同じことを意味する。
情報処理装置100の情報記憶部190は、注文された商品の配送予定に関する情報が保存される、図9に示すような配送予定テーブルを予め記憶している。配送予定テーブルには、1又は複数のレコードが保存される。配送予定テーブルの各レコードには、注文された商品の配送予定を識別する配送予定IDと、当該配送予定が生成された日時(以下、予定生成日時という)を表す情報と、当該配送予定を表す情報と、が対応付けられて保存される。配送予定を表す情報は、注文を行ったユーザのユーザIDと、注文された1又は複数の商品の配送先を表す情報と、を含む。
また、情報処理装置100の情報記憶部190は、配送される商品に関する情報が保存される、図10に示すような配送商品テーブルを予め記憶している。配送商品テーブルには、1又は複数のレコードが保存される。配送商品テーブルの各レコードには、配送予定を識別する配送予定IDと、当該配送予定の実行により配送される商品を識別する商品IDと、当該商品の注文された個数(以下、注文個数という)を表す情報と、移動機600に積載させる当該商品の在庫の数(以下、積載個数という)を表す情報と、が対応付けられて保存される。本実施例において、商品の配送先は、当該商品を注文したユーザによって予め指定された位置である。
本実施例では、積載個数は、配送される商品の重量の在庫が均一性を有する場合に、注文個数に設定されるが、配送される商品の在庫の重量が均一性を有さない場合に、注文個数よりも多い数に設定される。積載個数がこのように設定されるのは、配送された積載個数の商品から、重量に基づいて、注文個数の商品を受取人が選択できるようにするためである。本実施例では、説明を簡単にするため、受取人は、注文者であるとして以下の説明を行うが、これに限定される訳ではなく、受取人は、注文された商品の受け取りを注文者に依頼され、依頼を承諾した者であっても良い。
図3の注文受付処理の実行が開始されると、情報処理装置100の取得部110は、ユーザが使用する端末装置700から受信された認証要求を、データ通信回路104aから取得する(ステップS01)。次に、取得部110は、取得された認証要求から、認証を受けるユーザの認証情報を取得する。その後、取得部110は、図5のユーザテーブルから、取得された認証情報に含まれるユーザID「U1」と対応付けられたパスワードを表す情報を取得する。その後、制御部130は、認証要求に含まれる情報で表されるパスワードと、ユーザテーブルから取得された情報で表されるパスワードと、に基づいて、ユーザ認証を行う。このとき、制御部130は、これらのパスワードが一致しないと、ユーザ認証が失敗したと判別し(ステップS02;No)、注文受付処理の実行を終了する。これに対して、情報処理装置100の制御部130は、これらのパスワードが一致すると、ユーザ認証が成功したと判別し(ステップS02;Yes)、認証が成功したことを告げる認証成功報告を、端末装置700を宛先としてデータ通信回路104aに出力する。その後、情報処理装置100のデータ通信回路104aは、認証成功報告を端末装置700へ送信する。
端末装置700は、認証成功報告を受信して表示する。認証成功報告を視認したユーザは、商品を検索するために用いられるキーワードを入力する操作を端末装置700に行う。端末装置700は、当該操作に従ってキーワードを表す情報を含み、かつ、当該キーワードに従って検索を行うことを求める検索要求を情報処理装置100へ送信する。本実施例では、ユーザは「肩ロース」をキーワードとして入力する操作を端末装置700に行う場合を具体例として挙げて以下の説明を行う。このため、本実施例では、キーワード「肩ロース」を表す情報を含む検索要求が送信される。
ステップS02の処理を実行した後、情報処理装置100の取得部110は、データ通信回路104aからの終了通知の取得を試行する。終了通知は、端末装置700から受信される通知であり、かつ、注文アプリの実行を終了することを知らせる通知である。次に、制御部130は、終了通知を取得したか否かを判別し(ステップS03)、終了通知が取得されなかったと判別する(ステップS03;No)。次に、取得部110は、データ通信回路104aからの検索要求の取得を試行する。その後、制御部130は、検索要求が取得されたか否かを判別し(ステップS04)、検索要求が取得されたと判別する(ステップS04;Yes)。
その後、情報処理装置100の取得部110は、検索要求に含まれるキーワード「肩ロース」を表す情報を取得する(ステップS05)。次に、取得部110は、キーワード「肩ロース」に基づいて、図6の商品テーブルを検索することで、商品テーブルから、キーワード「肩ロース」と同じ、又は、キーワード「肩ロース」を含む名称を表す情報が保存されているレコードを取得することを試行する。これにより、取得部110は、名称「肩ロース牛肉」を表す情報が保存されている1番目のレコードを取得する。
その後、情報処理装置100の取得部110は、取得された商品テーブルの1番目のレコードに保存されているURL「./G1.html」を取得し、取得されたURL「./G1.html」に在る商品G1のウェブ頁を情報記憶部190から取得する(ステップS06)。その後、制御部130は、取得された商品G1のウェブ頁を、端末装置700を宛先としてデータ通信回路104aへ出力する(ステップS07)。その後、情報処理装置100のデータ通信回路104aが端末装置700へ商品G1のウェブ頁を送信した後に、情報処理装置100は、ステップS03から上記処理を繰り返す。
本実施例では、情報処理装置100は、在庫SK11及びSK12を含む、実店舗に存在する商品G1の複数の在庫について、重量を表す情報と、価格を表す情報と、を記憶していない。このため、情報処理装置100は、商品G1のウェブ頁に対して、在庫の重量を表す情報と、価格を表す情報と、を追加せずに、商品G1のウェブ頁を送信する。情報処理装置100が、在庫の重量を表す情報と、在庫の価格を表す情報と、を記憶していないのは、例えば、情報処理装置100の操作に精通していない従業員にとって、在庫の重量及び価格を入力する操作を行うことが困難である、又は、従業員が在庫の重量及び価格を入力する操作を行うために要する身体的負荷を軽減するためである。
端末装置700は、商品G1のウェブ頁を受信して表示する。本実施例では、商品G1のウェブ頁は、図8に示すような、例えば、テキストボックスであり、注文される商品G1の個数の選択に用いられるオブジェクトと、例えば、ボタンであり、選択された個数の商品G1を仮想的なショッピングカートに入れるために用いられるオブジェクトと、を含んでいる。本実施例において、選択された個数の商品G1を仮想的なショッピングカートに入れるとは、端末装置700が商品G1のウェブ頁を表示する場合、商品G1を識別する商品IDと、選択された個数を表す情報と、を対応付けて端末装置700が記憶することを意味する。
本実施例では、商品G1のウェブ頁は、商品G1の在庫の重量を選択するためのオブジェクト(以下、重量選択オブジェクトという)を含んでいない。商品G1のウェブ頁に重量選択オブジェクトが含まれていないのは、例えば、実店舗の従業員が、商品G1の注文が受け付けられてから、選択された重量を有するように商品G1の在庫を加工することが困難である、又は、そのような加工をするために要する従業員の身体的負荷を軽減するためである。また、商品G1のウェブ頁に重量選択オブジェクトが含まれていないのは、例えば、実店舗の作業場で従業員が勤務する時間帯以外の時間帯であっても、商品G1の注文が受け付けられるようにするためである。
また、本実施例では、商品G1のウェブ頁は、実店舗に存在する商品G1の複数の在庫から、販売及び配送を求める少なくとも1つの在庫を選択するためのオブジェクト(以下、在庫選択オブジェクトという)を含んでいない。商品G1のウェブ頁に在庫選択オブジェクトが含まれていないのは、情報処理装置100が実店舗に存在する商品G1の複数の在庫をそれぞれ識別する在庫IDを記憶していないためである。情報処理装置100が、在庫IDを記憶していないのは、例えば、実店舗の従業員が、商品G1の在庫の加工を行う度に、情報処理装置100に対して、在庫を識別する在庫IDと、在庫の重量を表す情報と、在庫の価格を表す情報と、を入力する操作を行うために要する身体的負荷を軽減するためである。
本実施例では、端末装置700に表示された商品G1のウェブ頁を視認したユーザが、注文される商品G1の個数を「1個」と選択するための操作を端末装置700に行ってから、「1個」の商品G1をショッピングカートに入れるための操作を端末装置700に行う場合を具体例として挙げて以下の説明を行う。このため、端末装置700は、ユーザの当該操作に応じて、商品G1の商品ID「G1」と、注文される商品G1の個数「1個」を表す情報と、を対応付けて記憶する。
次に、本実施例では、ユーザが、「サーロイン」をキーワードとして入力する操作を端末装置700に行う場合を具体例として挙げて以下の説明を行う。このため、本実施例では、キーワード「サーロイン」を表す情報を含む検索要求が送信される。
情報処理装置100は、ステップS03及びS04の処理を実行した後(ステップS03及びS04)、検索要求に含まれるキーワード「サーロイン」を表す情報を取得する(ステップS05)。次に、取得部110は、図6の商品テーブルから、キーワード「サーロイン」を含む名称「サーロイン牛肉」を表す情報が保存されている2番目のレコードを取得する。
その後、情報処理装置100の取得部110は、取得された2番目のレコードに保存されているURL「./G2.html」に在る商品G2のウェブ頁を情報記憶部190から取得する(ステップS06)。その後、制御部130は、取得された商品G2のウェブ頁に対して、実店舗に存在する複数の在庫の重量を表す情報と価格を表す情報とを追加せずに、商品G2のウェブ頁をデータ通信回路104aへ端末装置700を宛先として出力する(ステップS07)。商品G2の在庫の重量を表す情報と価格を表す情報とが追加されないのは、本実施例では、情報処理装置100は、実店舗に存在する商品G2の複数の在庫について、重量を表す情報と価格を表す情報とを記憶していないためである。その後、情報処理装置100は、ステップS03から上記処理を繰り返す。
端末装置700は、商品G2のウェブ頁を受信して表示する。本実施例では、商品G2のウェブ頁には、商品G1のウェブ頁と同様に、注文される商品G2の個数の選択に用いられるオブジェクトと、選択された個数の商品G2をショッピングカートに入れるために用いられるオブジェクトと、が掲載されている。しかし、商品G2のウェブ頁は、商品G1のウェブ頁と同様に、商品G2の重量選択オブジェクト及び在庫選択オブジェクトを含んでいない。本実施例では、商品G2のウェブ頁を視認したユーザが、「2個」の商品G2をショッピングカートに入れるための操作を端末装置700に行う場合を具体例として挙げて以下の説明を行う。このため、端末装置700は、ユーザの当該操作に応じて、商品G2の商品ID「G2」と、注文される商品G2の個数「2個」を表す情報と、を対応付けて記憶する。
次に、本実施例では、牛肉の調理に用いる「塩」をキーワードとして入力する操作をユーザが端末装置700に行う場合を具体例として挙げて以下の説明を行う。このため、端末装置700は、キーワード「塩」を表す情報を含む検索要求を送信する。
情報処理装置100は、ステップS03からS06の処理を実行した後に(ステップS03からS06)、キーワード「塩」と一致する名称「塩」の商品G3のウェブ頁を、端末装置700を宛先としてデータ通信回路104aへ出力する(ステップS07)。その後、情報処理装置100は、ステップS03から上記処理を繰り返す。
端末装置700は、商品G3のウェブ頁を受信して表示する。本実施例では、商品G3のウェブ頁を視認したユーザが、「3個」の商品G3をショッピングカートに入れるための操作を端末装置700に行う場合を具体例として挙げて以下の説明を行う。このため、端末装置700は、ユーザの当該操作に応じて、商品G3の商品ID「G3」と、注文される商品G3の個数「3個」を表す情報と、を対応付けて記憶する。
その後、ユーザは、ショッピングカートに入れられた「1個」の商品G1、「2個」の商品G2、及び、「3個」の商品G3の注文を行うための操作を、端末装置700に行う。端末装置700は、当該操作に応じて、「1個」の商品G1、「2個」の商品G2、及び、「3個」の商品G3の注文を受け付けることを求める注文受付要求を生成し、生成された注文受付要求を情報処理装置100へ送信する。注文受付要求には、注文される商品G1の商品ID「G1」、及び、注文される商品G1の個数「1個」を表す情報と、商品ID「G2」、及び、個数「2個」を表す情報と、商品ID「G3」、及び、個数「3個」を表す情報と、が含まれている。
情報処理装置100は、ステップS03の処理を実行した後に(ステップS03)、検索要求を取得しなかったと判別する(ステップS04;No)。次に、情報処理装置100の取得部110は、データ通信回路104aからの注文受付要求の取得を試行し、制御部130は、注文受付要求が取得されたと判別する(ステップS08;Yes)。次に、取得部110は、ユーザによって注文された商品(以下、注文商品という)G1の商品ID「G1」、及び、注文された商品G1の個数(以下、注文個数という)「1個」を表す情報と、注文商品G2の商品ID「G2」、及び、注文個数「2個」を表す情報と、注文商品G3の商品ID「G3」、及び、注文個数「3個」を表す情報と、を注文受付要求から取得する。
その後、情報処理装置100の制御部130は、注文受付要求に従って、ユーザによる注文を受け付ける(ステップS09)。すなわち、情報処理装置100は、注文個数「1個」の注文商品G1と、注文個数「2個」の注文商品G2と、注文個数「3個」の注文商品G3と、をユーザに販売することを求める販売要求を受け付ける。また、情報処理装置100は、注文個数「1個」の注文商品G1と、注文個数「2個」の注文商品G2と、注文個数「3個」の注文商品G3と、をユーザの配送先へ配送することを求める配送要求を受け付ける。
次に、情報処理装置100の取得部110は、図5のユーザテーブルから、注文を行ったユーザのユーザID「U1」と対応付けられた、不図示の配送先の位置D1を表す位置情報を取得する。次に、制御部130は、ユーザID「U1」と、配送先の位置D1を表す位置情報と、を対応付けることで、ユーザID「U1」で識別されるユーザによって注文された商品を、当該ユーザによって予め指定された配送先の位置D1へ移動機600に配送させる、という配送予定を表す情報を生成する。また、制御部130は、予め定められた規則、又は、ソフトウェア乱数に基づいて、生成された配送予定を識別する配送予定IDを生成する。本実施例では、配送予定ID「DS1」が生成された場合を具体例として挙げて以下の説明を行う。
次に、情報処理装置100の取得部110は、例えば、OS(Operating System)が管理するシステム日時を予定生成日時として取得する。その後、制御部130は、図9の配送予定テーブルに、生成された配送予定ID「DS1」と、取得された予定生成日時を表す情報と、生成された配送予定を表す情報と、を対応付けて保存する(ステップS10)。
また、情報処理装置100の制御部130は、図10の配送商品テーブルに、生成された配送予定ID「DS1」と、配送が求められた注文商品G1の商品ID「G1」と、注文個数「1個」を表す情報と、積載個数が未だ設定されていないことを表す文字列「NULL」と、を対応付けて保存する。さらに、制御部130は、配送予定ID「DS1」と、注文商品G2の商品ID「G2」と、注文個数「2個」を表す情報と、文字列「NULL」と、を対応付けて保存する。またさらに、制御部130は、配送商品テーブルに、配送予定ID「DS1」と、注文商品G3の商品ID「G3」と、注文個数「3個」を表す情報と、文字列「NULL」と、を対応付けて保存する。その後、情報処理装置100は、ステップS03から上記処理を繰り返す。尚、ステップS08において、注文受付要求が取得されなかったと判別された場合も(ステップS08;No)、情報処理装置100は、ステップS03から上記処理を繰り返す。
ステップS03において、情報処理装置100の制御部130は、終了通知が取得されたと判別すると(ステップS03;Yes)、注文受付処理の実行を終了する。
情報処理装置100のCPU101は、起動すると、移動機600に商品の在庫を配送させるため、図11及び図12に示すような移動制御処理を実行する。これにより、情報処理装置100のCPU101は、注文された商品の在庫を移動機600に積載させる指示を行う、図4に示すような指示部120として機能する。また、CPU101は、移動機600に積載された後に、受取人により受け取られた在庫の価格を特定する特定部140として機能する。
移動制御処理の実行が開始されると、情報処理装置100の制御部130は、図9の配送予定テーブルにレコードが保存されているか否かに基づいて、未実行の配送予定が存在するか否かを判別する(ステップS11)。このために、取得部110は、配送予定テーブルからレコードを取得することを試行する。このとき、制御部130は、レコードが取得されないと判別すると、未実行の配送予定が存在しないと判別し(ステップS11;No)、予め定められた時間に亘ってスリープした後に、ステップS11の処理を繰り返す。
これに対して、情報処理装置100の制御部130は、配送予定テーブルから1又は複数のレコードが取得されたと判別すると、未実行の配送予定が存在すると判別する(ステップS11;Yes)。次に、取得部110は、取得された1又は複数のレコードの内で、最も早い予定生成日時を表す情報が保存されているレコードから、配送予定を表す情報を取得する(ステップS12)。これにより、1又は複数の未実行の配送予定の内で、最も早い予定生成日時に生成された配送予定を表す情報が取得される。本実施例では、ユーザID「U1」と、配送先の位置D1を表す位置情報と、を含み、かつ、配送予定ID「DS1」で識別される配送予定を表す情報が取得される場合を具体例として挙げて以下の説明を行う。
次に、情報処理装置100の制御部130は、取得された情報で表される配送予定に注目する。その後、取得部110は、配送予定テーブルから、注目された配送予定(以下、注目配送予定という)を表す情報に対応付けられた配送予定ID「DS1」を取得し、図10の配送商品テーブルから、取得された配送予定ID「DS1」にそれぞれ対応付けられた商品ID「G1」から「G3」を取得する。これにより、情報処理装置100の特定部140は、注目配送予定に従って配送する注文商品G1からG3を特定する(ステップS13)。
次に、情報処理装置100は、注文商品G1からG3の在庫の積載個数を設定する、図13に示すような積載個数設定処理を実行する(ステップS14)。積載個数設定処理の実行が開始されると、制御部130は、図11のステップS13で特定された注文商品G1からG3の内で、未注目の注文商品が存在するか否かを判別する(ステップS41)。このとき、注文商品G1からG3の全てが未注目であるため、制御部130は、未注目の注文商品G1からG3が存在すると判別する(ステップS41;Yes)。次に、制御部130は、未注目の注文商品G1からG3の1つに注目する(ステップS42)。本実施例では、注文商品G1が注目された場合を具体例として挙げて以下の説明を行う。
次に、情報処理装置100の取得部110は、図10の配送商品テーブルから、注目配送予定を識別する配送予定ID「DS1」と、注目された注文商品(以下、注目注文商品という)G1を識別する商品ID「G1」と、に対応付けられた注文個数「1個」を表す情報を取得する(ステップS43)。
次に、情報処理装置100の取得部110は、図6の商品テーブルから、注目注文商品G1の商品ID「G1」と対応付けられた値「false」の均一性フラグを取得する(ステップS44)。次に、指示部120は、取得された均一性フラグの値に基づいて、注目注文商品G1の在庫の重量が均一性を有するか否かを判別する(ステップS45)。このとき、指示部120は、取得された均一性フラグの値が「false」であるため、注目注文商品G1の在庫の重量が均一性を有さないと判別する(ステップS45;No)。すなわち、注目注文商品G1は、販売に用いられるウェブ頁における重量についての表示形態が同一の商品であるが、実際には在庫毎に重量が異なる商品である、と指示部120は判別する。
次に、情報処理装置100の取得部110は、積載個数を設定する基礎として用いられる、予め定められた定数Cを表す情報を、情報記憶部190から取得する(但し、Cは自然数)。本実施例では、定数Cが値「2」に予め定められている場合を具体例として挙げて以下の説明を行う。しかし、これに限定される訳では無く、好適な定数Cの値は、当業者が実験により定めることができる。
次に、情報処理装置100の指示部120は、ステップS43で取得された情報で表される注文個数「1個」に、定数Cの値を乗算ことで得られる値に、注目注文商品G1の在庫の積載個数を設定する(ステップS46)。本実施例では、定数Cが値「2」に予め定められているため、指示部120は、注目注文商品G1の注文個数「1個」を「2」倍することで得られる「2個」に、注目注文商品G1の在庫の積載個数を設定する。すなわち、指示部120は、注目注文商品G1の在庫の積載個数を、注文個数「1個」よりも余剰個数「1個」多い「2個」に設定する。その後、制御部130は、図10の配送商品テーブルにおいて、注目配送予定の配送予定ID「DS1」と、注目注文商品G1の商品ID「G1」と、に対応付けられた文字列「NULL」を、設定された積載個数「2個」を表す情報に変更する。次に、情報処理装置100は、ステップS41から上記処理を繰り返す。
次に、情報処理装置100は、未注目の注文商品G2及びG3が存在すると判別した後に(ステップS41;Yes)、未注目の注文商品G2及びG3の1つに注目する(ステップS42)。本実施例では、注文商品G2が注目される場合を具体例として挙げて以下の説明を行う。
次に、情報処理装置100は、注目注文商品G2の注文個数「2個」を表す情報を取得し(ステップS43)、注目注文商品G2の均一性フラグを取得し(ステップS44)、取得された均一性フラグの値が「false」であるため、注目注文商品G2の在庫の重量が均一性を有さないと判別する(ステップS45;No)。その後、情報処理装置100は、注目注文商品G2の注文個数「2個」を「2倍」することで得られる値「4個」に、注目注文商品G2の在庫の積載個数を設定する(ステップS46)。その後、制御部130は、図10の配送商品テーブルにおいて、注目配送予定の配送予定ID「DS1」と、注目注文商品G2の商品ID「G2」と、に対応付けられた文字列「NULL」を、設定された積載個数「4個」を表す情報に変更する。その後、情報処理装置100は、ステップS41から上記処理を繰り返す。
次に、情報処理装置100は、未注目の注文商品G3が存在すると判別した後に(ステップS41;Yes)、未注目の注文商品G3に注目する(ステップS42)。その後、情報処理装置100は、注目注文商品G3の注文個数「3個」を表す情報を取得し(ステップS43)、注目注文商品G3の均一性フラグを取得する(ステップS44)。次に、指示部120は、取得された均一性フラグの値が「true」であるため、注目注文商品G3の在庫の重量が均一性を有すると判別する(ステップS45;Yes)。すなわち、注目注文商品G3は、販売に用いられるウェブ頁における重量についての表示形態が同一の商品であり、かつ、実際に在庫毎に重量が同じ商品である、と指示部120は判別する。
その後、情報処理装置100は、注目注文商品G3の注文個数「3個」に、注目注文商品G3の在庫の積載個数を設定する(ステップS47)。すなわち、指示部120は、注目注文商品G3の余剰個数を「0個」に設定する。その後、制御部130は、図10の配送商品テーブルにおいて、注目配送予定の配送予定ID「DS1」と、注目注文商品G3の商品ID「G3」と、に対応付けられた文字列「NULL」を、設定された積載個数「3個」を表す情報に変更する。その後、情報処理装置100は、ステップS41から上記処理を繰り返す。
次に、情報処理装置100の制御部130は、未注目の注文商品が存在しないと判別した後に(ステップS41;No)、積載個数設定処理の実行を終了する。
図11のステップS14で、積載個数設定処理が実行された後、情報処理装置100の指示部120は、注文商品G1からG3の在庫の探出、運搬、及び、積載を指示する(ステップS15)。このために、指示部120は、注文商品G1からG3の在庫の探出、運搬、及び、積載を指示するメッセージをディスプレイパネル105bに表示させる。
このために、情報処理装置100の指示部120は、注文商品G1の商品ID「G1」又は名称「肩ロース牛肉」を表す情報と、積載個数「2個」を表す情報と、を含む、商品G1の積載に関するメッセージを生成する。商品G1の積載に関するメッセージは、積載個数「2個」の注文商品G1の在庫を実店舗から探し出すこと、探し出された「2個」の在庫を移動機600の位置まで運搬すること、を指示するメッセージである。また、商品G1の積載に関するメッセージは、運搬された「2個」の在庫を、図14に示すような移動機600の格納ボックス621が有する第1サブボックスSN1に積載すること、及び、積載された「2個」の在庫の価格を、例えば、従業員が所持するメモ帳に記載する又は記憶すること、をさらに指示するメッセージである。
本実施例では、注文商品G1の在庫の価格は、当該在庫を密封するラップフィルムに貼付されたラベルに印字されているが、これに限定される訳では無い。また、「2個」の在庫の価格を従業員がメモ帳に記載する又は記憶するのは、移動機600に積載された商品G1の「2個」の在庫の内で、受取人に受け取られた注文個数「1個」の在庫の価格を、メモ帳の記載又は記憶に基づいて従業員が特定できるようにしておくためである。
また、情報処理装置100の指示部120は、注文商品G2の商品ID「G2」又は名称「サーロイン牛肉」を表す情報と、積載個数「4個」を表す情報と、を含む、商品G2の積載に関するメッセージを生成する。商品G2の積載に関するメッセージは、積載個数「4個」の注文商品G4の在庫を実店舗から探し出すこと、探し出された「4個」の在庫を移動機600の位置まで運搬すること、運搬された「4個」の在庫を移動機600の第1サブボックスSN2に積載すること、及び、積載された「4個」の在庫の価格をメモ帳に記載する又は記憶すること、を指示するメッセージである。
さらに、情報処理装置100の指示部120は、注文商品G3の商品ID「G3」又は名称「塩」を表す情報と、積載個数「3個」を表す情報と、を含む、商品G3の積載に関するメッセージを生成する。商品G3の積載に関するメッセージは、積載個数「3個」の注文商品G3の在庫を実店舗から探し出すこと、探し出された「3個」の在庫を移動機600の位置まで運搬すること、運搬された「3個」の在庫を移動機600の第2サブボックスSUに積載すること、及び、積載された「3個」の在庫の価格をメモ帳に記載する又は記憶すること、を指示するメッセージである。格納ボックス621が有する第1サブボックスSN1及びSN2は、在庫の重量が均一性を有さない1又は複数の商品を格納するために用いられるのに対し、第2サブボックスSUは、在庫の重量が均一性を有する1又は複数の商品を格納するために用いられる。
次に、情報処理装置100の指示部120は、生成された商品G1の積載に関するメッセージ、商品G2の積載に関するメッセージ、及び、商品G3の積載に関するメッセージをディスプレイパネル105bに表示させる。これらのメッセージを視認した従業員は、積載個数「2個」の注文商品G1の在庫と、積載個数「4個」の注文商品G2の在庫と、積載個数「3個」の注文商品G3の在庫と、を、実店舗の売り場の棚、又は、バックヤードの棚から探し出す。次に、従業員は、探し出されたこれらの在庫を、例えば、実店舗のバックヤード又は駐車場の不図示の位置Sに停車している移動機600まで運搬する。その後、従業員は、積載個数「2個」の注文商品G1の在庫を移動機600の第1サブボックスSN1に積載させ、積載個数「4個」の注文商品G2の在庫を第1サブボックスSN2に積載させ、かつ、積載個数「3個」の注文商品G3の在庫を第2サブボックスSUに積載させる。
このようにして、情報処理装置100の指示部120が、注文個数「1個」よりも多い積載個数「2個」、注文商品G1の在庫を移動機600に積載させる指示を行い、従業員が指示に従って積載個数「2個」の注文商品G1の在庫を移動機600に積載させる。これにより、移動機600が配送先の位置D1に到着した場合に、積載個数「2個」の注文商品G1の在庫から、注文個数「1個」の注文商品G1の在庫を受取人が選択可能になる。同様に、指示部120が、注文個数「2個」よりも多い積載個数「4個」、注文商品G2の在庫を積載させる指示を行い、従業員が指示に従って積載個数「4個」の注文商品G2の在庫を移動機600に積載させる。これにより、移動機600が配送先の位置D1に到着した場合に、積載個数「4個」の注文商品G2の在庫から、注文個数「2個」の注文商品G2の在庫を受取人が選択可能になる。
その後、従業員は、積載が終了したことを表す信号を出力させる操作を情報処理装置100の入力装置105cに行う。情報処理装置100の入力装置105cが当該操作に応じた信号を出力すると、制御部130は、格納ボックス621の施錠を命じる施錠命令を、移動機600を宛先としてデータ通信回路104aに出力する(ステップS16)。情報処理装置100のデータ通信回路104aは、施錠命令を移動機600へ送信する。次に、制御部130は、移動機600に積載された在庫を撮像し、撮像により得られた画像(以下、撮像画像という)を送信するように命じる画像送信命令を、移動機600を宛先としてデータ通信回路104aに出力する(ステップS17)。情報処理装置100のデータ通信回路104aは、画像送信命令を移動機600へ送信する。
移動機600は、施錠命令を受信すると、受信された施錠命令に従って格納ボックス621を施錠する。次に、移動機600は、画像送信命令を受信すると、図15に示すような撮像装置CR1を用いて第1サブボックスSN1に格納された積載個数「2個」の注文商品G1の在庫を撮像する。次に、移動機600は、撮像により得られた画像を表す画像情報(以下、注文商品G1の画像情報という)と、第1サブボックスSN1を識別するサブボックスID「SN1」と、を情報処理装置100へ送信する。同様に、移動機600は、撮像装置CR2を用いて第1サブボックスSN2に格納された積載個数「4個」の注文商品G2の在庫を撮像し、撮像により得られた画像を表す画像情報(以下、注文商品G2の画像情報という)と、第1サブボックスSN2を識別するサブボックスID「SN2」と、を情報処理装置100へ送信する。
情報処理装置100のデータ通信回路104aが、注文商品G1の画像情報と、サブボックスID「SN1」と、を移動機600から受信すると、取得部110は、データ通信回路104aからこれらの情報を取得する。また、データ通信回路104aが、注文商品G2の画像情報と、サブボックスID「SN2」と、を移動機600から受信すると、取得部110は、データ通信回路104aからこれらの情報を取得する(ステップS18)。
次に、情報処理装置100の制御部130は、注文商品G1からG3の配送元である実店舗の位置Sから、注文商品G1からG3の配送先の位置D1に到る不図示の移動経路PSD1を決定する。このために、情報処理装置100の取得部110は、情報記憶部190が予め記憶している部分経路テーブルから複数のレコードを読み出す。部分経路テーブルには、例えば、道路、河原、又は、公園といった移動機600が移動可能な部分経路に関する情報が保存された複数のレコードが予め保存されている。部分経路テーブルの各レコードには、部分経路であるエッジの始点ノードの緯度、経度、及び、高度と、当該エッジの終点ノードの緯度、経度、及び、高度と、当該エッジの距離を表す情報と、が対応付けられて予め保存されている。
次に、情報処理装置100の取得部110は、情報記憶部190が予め記憶している配送元の位置Sを緯度、経度、及び、高度で表す位置情報を取得する。その後、制御部130は、読み出された部分経路テーブルの各レコードに保存されているエッジの距離と、当該エッジの始点ノード及び終点ノードの緯度、経度、及び、高度と、配送元の位置S及び配送先の位置D1の緯度、経度、及び、高度と、を用いて、例えば、ダイクストラ法といった公知の経路探索アルゴリズムを実行する。これにより、情報処理装置100の制御部130は、部分経路を組み合わせることで、配送元の位置Sから配送先の位置D1へ到る最短の全体経路を移動経路PSD1に決定し、決定された移動経路PSD1を表す情報を生成する。移動経路PSD1を表す情報には、移動経路PSD1に含まれる複数のノードの位置を緯度、経度、及び、高度で表す位置情報と、複数のノードの到着順を表す情報と、が含まれている。
次に、情報処理装置100の取得部110は、情報記憶部190が予め記憶する移動機600の移動速度を表す情報を取得する。移動機600の移動速度は、予め移動機600に設定されている最高速度であっても良いし、過去に計測された移動機600の速度の平均値又は中央値であっても良い。その後、制御部130は、移動経路PSD1を表す情報に基づいて、移動経路PSD1の距離を算出し、算出された距離を、取得された情報で表される移動速度で除算することで、移動機600が移動経路PSD1を移動するのに要する移動時間を算出する。その後、取得部110は、例えば、OSが管理するシステム日時を取得し、制御部130は、取得されたシステム日時に、算出された移動時間を加算することで、配送先の位置D1へ移動機600が到着する到着時刻を算出する。本実施例では、到着時刻が「12:00」と算出された場合を具体例として挙げて以下の説明を行う。
次に、情報処理装置100の取得部110は、配送先の位置D1を緯度、経度、及び、高度で表す位置情報と、情報記憶部190が予め対応付けて記憶する住所を表す情報を取得する。その後、制御部130は、配送先の位置D1の住所を表す情報と、配送先への移動機600の到着時刻「12:00」を表す情報と、を含み、移動機600が配送先の位置D1へ到着時刻「12:00」に到着する予定であることを告げる配送予定通知を生成する。
次に、情報処理装置100の取得部110は、図10の配送商品テーブルから、注目配送予定ID「DS1」と、注文商品G1の商品ID「G1」と、に対応付けられた注文個数「1個」を表す情報と、積載個数「2個」を表す情報と、を取得する。その後、制御部130は、取得された情報で表される注文個数「1個」と、積載個数「2個」と、が異なるため、注文商品G1の検討を促すメッセージを生成する。注文商品G1の検討を促すメッセージは、移動機600が配送先の位置D1へ到着するまでに、注文商品G1の撮像情報に基づいて、第1サブボックスSN1に格納された積載個数「2個」の注文商品G1の在庫の内で、受取人が受け取る注文個数「1個」の在庫をどれにするか検討しておくことを促すメッセージである。このため、注文商品G1の検討を促すメッセージには、注文商品G1の商品ID「G1」又は名称「肩ロース牛肉」を表す情報、第1サブボックスSN1のサブボックスID「SN1」、積載個数「2個」を表す情報、及び、注文商品G1の注文個数「1個」を表す情報が含まれる。
次に、情報処理装置100の取得部110は、配送商品テーブルから、注目配送予定ID「DS1」と、注文商品G2の商品ID「G2」と、に対応付けられた注文個数「2個」を表す情報と、積載個数「4個」を表す情報と、を取得する。その後、制御部130は、取得された情報で表される注文個数「2個」と、積載個数「4個」と、が異なるため、注文商品G2の検討を促すメッセージを生成する。
次に、情報処理装置100の取得部110は、配送商品テーブルから、注目配送予定ID「DS1」と、注文商品G3の商品ID「G3」と、に対応付けられた注文個数「3個」を表す情報と、積載個数「3個」を表す情報と、を取得する。その後、制御部130は、取得された情報で表される注文個数「3個」と、積載個数「3個」と、が同じであるため、注文商品G3の検討を促すメッセージを生成せず、注文商品G3が格納されているサブボックスを知らせるメッセージを生成する。注文商品G3が格納されているサブボックスを知らせるメッセージは、注文商品G3の商品ID「G3」又は名称「塩」を表す情報、第2サブボックスSUのサブボックスID「SU」、及び、注文商品G3の注文個数「3個」を表す情報を含み、注文個数「3個」の注文商品G3の在庫が第2サブボックスSUに格納されていることを知らせるメッセージである。
その後、情報処理装置100の制御部130は、生成された配送予定通知に、注文商品G1の画像情報、及び、注文商品G2の画像情報を追加する。次に、制御部130は、追加後の配送予定通知に、注文商品G1の検討を促すメッセージ、注文商品G2の検討を促すメッセージ、及び、注文商品G3が格納されているサブボックスを知らせるメッセージを追加する。その後、制御部130は、配送予定通知を、注文者の端末装置700を宛先としてデータ通信回路104aへ出力する(ステップS19)。次に、情報処理装置100のデータ通信回路104aは、配送予定通知を端末装置700へ送信し、端末装置700は、配送予定通知を受信して表示する。
本実施例では、配送予定通知に含まれる注文商品G1の画像情報で表される撮像画像(以下、注文商品G1の撮像画像という)は、積載個数「2個」の注文商品G1の在庫をそれぞれ密封するフィルムに貼付されたラベルに対応する画像領域を含んでいる。同様に、配送予定通知に含まれる注文商品G2の画像情報で表される撮像画像(以下、注文商品G2の撮像画像という)は、積載個数「4個」の注文商品G2の在庫をそれぞれ密封するフィルムに貼付されたラベルに対応する画像領域を含んでいる。ラベルには、当該ラベルが貼付された在庫の重量及び価格が記載されている。これらのため、端末装置700に表示された配送予定通知を視認した注文者は、注文商品G1の撮像画像に基づいて、積載個数「2個」の注文商品G1の在庫の重量又は価格を確認し、確認された重量又は価格に基づいて、積載個数「2個」の在庫の内で、受け取る注文個数「1個」の在庫をどれにするかを検討する。同様に、注文者は、注文商品G2の撮像画像に基づいて、積載個数「4個」の注文商品G2の在庫の内で、受け取る注文個数「2個」の在庫をどれにするかを検討する。
次に、情報処理装置100の制御部130は、移動経路PSD1を表す情報を含み、かつ、当該移動経路PSD1を移動することを命じる移動命令を、移動機600を宛先としてデータ通信回路104aへ出力する(ステップS20)。その後、データ通信回路104aは、移動命令を移動機600へ送信する。このようにして、情報処理装置100の制御部130は、積載個数「2個」の注文商品G1の在庫と、積載個数「4個」の注文商品G2の在庫と、積載個数「3個」の注文商品G3の在庫と、を積載した移動機600に、配送先の位置D1まで配送元の位置Sから移動させる移動制御を行う。
次に、情報処理装置100の取得部110は、データ通信回路104aから到着報告を取得することを試行し、制御部130は、到着報告が取得されたか否かを判別する(ステップS21)。当該到着報告は、移動機600から受信される報告であり、かつ、配送先の位置D1に移動機600が到着したことを告げる報告である。このとき、制御部130は、到着報告が取得されなかったと判別すると(ステップS21;No)、予め定められた時間に亘ってスリープしてから、ステップS21の処理を繰り返す。
これに対して、到着報告が取得されたと判別されると(ステップS21;Yes)、情報処理装置100の制御部130は、移動制御が終了したと判別する。次に、制御部130は、配送先の位置D1を住所で表す情報を含み、移動機600が配送先の位置D1に到着したことを告げ、かつ、配送先の位置D1に滞在する移動機600から、注文個数「1個」の注文商品G1の在庫、注文個数「2個」の注文商品G2の在庫、及び、注文個数「3個」の注文商品G3の在庫を受け取ることを求める受取要求を生成する。
その後、情報処理装置100の制御部130は、予め定められた規則、又は、ソフトウェア乱数に基づいて、注文商品G1からG3の在庫の受け取りに用いられるパスワードを生成する。次に、制御部130は、生成されたパスワードを表す情報を含み、かつ、移動機600にパスワードを入力して認証を受けることを求めるメッセージ(以下、認証を求めるメッセージという)を生成する。
その後、情報処理装置100の制御部130は、生成された受取要求に対して、認証を求めるメッセージを追加してから、端末装置700を宛先としてデータ通信回路104aへ受取要求を出力する(ステップS22)。情報処理装置100のデータ通信回路104aは、出力された受取要求を端末装置700へ送信し、端末装置700は、受取要求を受信して表示する。
受取要求が出力されると、情報処理装置100の制御部130は、不図示のハードウェアタイマー又はソフトウェアタイマーを用いて計時を開始する。その後、取得部110は、受渡時間の長さを表す情報を情報記憶部190から取得する。本実施例において、受渡時間の長さは、過去に観測された時間長であり、かつ、移動機600が、端末装置700のユーザを含む複数のユーザに商品の在庫を受け渡すのに要した時間長の平均値「10分」に予め設定されているが、これに限定される訳では無い。受渡時間の長さは、「0分」より長く、かつ、「10分」より短くても良いし、「10分」より長くても良い。また、受渡時間の長さは、過去に観測された時間長の中央値であっても良い。さらに、より好適な受渡時間の長さは、当業者が、実験により定めることができる。
また、本実施例では、受渡時間の長さは、受け渡される在庫の数に関わらず「10分」に予め設定されているが、これに限定される訳では無い。受渡時間の長さは、移動機600から受け渡される在庫の総数がより多い程、より長い時間に予め設定されており、情報処理装置100の情報記憶部190は、受け渡される在庫の総数を表す情報と、当該総数の在庫を移動機600がユーザに商品受け渡すのに要する時間の長さを表す情報と、を対応付けて予め記憶していてもよい。また、取得部110は、受け渡される注文商品G1からG3の在庫の総数「9個」を表す情報に対応付けられている情報を取得しても良い。
また、これに限定される訳では無く、受渡時間の長さは、移動機600に積載されている複数の商品から、1又は複数の商品が選択されるのに要する時間を含んでも良い。また、受渡時間の長さは、注文個数の総和がより多い程、より長い時間に予め設定されており、かつ、余剰個数の総和がより多い程、より長い時間に予め設定されていても良い。さらに、情報処理装置100の情報記憶部190は、注文個数の総和を表す情報と、余剰個数の総和を表す情報と、受渡時間の長さを表す情報と、を対応付けて予め記憶していてもよい。また、取得部110は、注文商品G1からG3の注文個数「1個」、「2個」、及び、「3個」の総和「6個」と、注文商品G1からG3の余剰個数「1個」、「2個」、及び、「0個」の総和「3個」と、を表す情報に対応付けられている受渡時間の長さを表す情報を取得しても良い。
本実施例では、受取人が、受渡時間「10分」を経過するよりも前に、配送先の位置D1に現れる場合を具体例として挙げて以下の説明を行う。受取人は、端末装置700の表示を視認し、受取要求に従って、パスワードを入力させるための操作を、配送先の位置D1に滞在する移動機600に行う。移動機600は、当該操作に従って、入力されたパスワードを表す情報を含み、かつ、パスワードを用いた認証を行うことを要求する認証要求を情報処理装置100へ送信する。
図12のステップS22で受取要求が出力された後、情報処理装置100の制御部130は、計時時間に基づいて、受取要求を出力してから受渡時間「10分」が経過したか否かを判別する(ステップS23)。このとき、受渡時間「10分」が経過していないと判別されると(ステップS23;No)、取得部110は、認証要求をデータ通信回路104aから取得することを試行する。
このとき、情報処理装置100は、認証要求が取得されないと、ステップS23から上記の処理を繰り返す。これに対して、認証要求が取得されると、制御部130は、取得された認証要求に含まれる情報で表されるパスワードと、ステップS22で出力された受取要求に含まれる情報で表されるパスワードと、が一致するか否かに基づいて認証が成功したか否かを判別する(ステップS24)。このとき、これらのパスワードが一致しないため、認証が成功せず、失敗したと判別すると(ステップS24;No)、制御部130は、パスワード認証が失敗したことを告げる認証失敗報告を、移動機600を宛先としてデータ通信回路104aに出力する。その後、情報処理装置100は、ステップS23から上記処理を繰り返す。
これに対して、情報処理装置100の制御部130は、2つのパスワードが一致するため、認証が成功したと判別すると(ステップS24;Yes)、格納ボックス621の解錠を命じる解錠命令を、移動機600を宛先としてデータ通信回路104aへ出力する(ステップS25)。情報処理装置100のデータ通信回路104aは、解錠命令を移動機600に送信し、移動機600は、解錠命令を受信すると、格納ボックス621を解錠して、積載個数「2個」の注文商品G1の在庫、積載個数「4個」の注文商品G2の在庫、及び、積載個数「3個」の注文商品G3の在庫を解放する。
このようにして、情報処理装置100の制御部130は、移動機600の状態を、格納ボックス621に格納された積載個数「2個」の注文商品G1の在庫から、注文個数「1個」の在庫を受取人が選択可能であり、積載個数「4個」の注文商品G2の在庫から、注文個数「2個」の在庫を受取人が選択可能な状態とする制御を行う。また、このようにして、制御部130は、移動機600の状態を、選択された注文個数「1個」の注文商品G1の在庫を受取人が受取可能であり、選択された注文個数「2個」の注文商品G2の在庫を受取人が受取可能な状態とし、積載個数「3個」の注文商品G3を受取人が受取可能な状態とする制御を行う。すなわち、制御部130は、注文個数「1個」の注文商品G1の在庫、注文個数「2個」の注文商品G2の在庫、及び、注文個数「3個」の注文商品G3の在庫を受取人に受け渡させる受渡制御を移動機600に行う。
その後、情報処理装置100の取得部110は、移動機600から受信された受渡報告をデータ通信回路104aから取得することを試行し、制御部130は、受渡報告が取得されたか否かを判別する(ステップS26)。受渡報告は、注文個数「1個」の注文商品G1の在庫、注文個数「2個」の注文商品G2の在庫、及び、注文個数「3個」の注文商品G3の在庫が受取人に受け渡されたことを告げる報告である。このとき、情報処理装置100は、受渡報告が取得されなかったと判別すると(ステップS26;No)、予め定められた時間に亘ってスリープしてから、ステップS26の処理を繰り返す。
これに対して、受渡報告が取得されたと判別されると(ステップS26;Yes)、情報処理装置100の制御部130は、施錠命令を、移動機600を宛先としてデータ通信回路104aに出力する(ステップS27)。このようにして、制御部130は、積載個数「2個」の注文商品G1の在庫の内で、受け渡されなかった余剰個数「1個」の注文商品G1の在庫と、積載個数「4個」の注文商品G2の在庫の内で、受け渡されなかった余剰個数「2個」の注文商品G2の在庫と、を格納している格納ボックス621を施錠させる制御を移動機600に行う。
次に、制御部130は、ステップS19で説明した処理と同様の処理を実行することで、配送先の位置D1から配送元である実店舗の位置Sに到る不図示の移動経路PD1Sを表す情報を生成する。次に、制御部130は、生成された移動経路PD1Sを表す情報を含み、かつ、移動経路PD1Sを移動して実店舗の位置Sまで帰還することを命じる帰還命令を、移動機600を宛先としてデータ通信回路104aへ出力する(ステップS28)。情報処理装置100のデータ通信回路104aは、当該帰還命令を移動機600へ送信する。このようにして、制御部130は、配送先の位置D1から実店舗の位置Sへ帰還させる帰還制御を移動機600に行う。
次に、情報処理装置100は、ステップS21と同様の処理を実行することで、実店舗の位置Sに移動機600が到着したことを告げる到着報告が取得されたか否かを判別する(ステップS29)。このとき、情報処理装置100は、到着報告が取得されなかったと判別すると(ステップS29;No)、予め定められた時間に亘ってスリープしてから、ステップS29の処理を繰り返す。これに対して、到着報告が取得されたと判別されると(ステップS29;Yes)、情報処理装置100の制御部130は、帰還制御が終了したと判別する。次に、制御部130は、解錠命令を、移動機600を宛先としてデータ通信回路104aに出力する(ステップS30)。
移動機600が実店舗の位置Sに到着すると、実店舗の従業員は、移動機600の格納ボックス621に格納されている余剰個数「1個」の注文商品G1の在庫の価格と、余剰個数「2個」の注文商品G2の在庫の価格と、を、これらの在庫のラベルを視認することで確認する。次に、従業員は、メモ帳に記載されている、又は、従業員が記憶している、積載個数「2個」の注文商品G1の在庫の価格、及び、積載個数「4個」の注文商品G2の在庫の価格から、確認された余剰個数「1個」の注文商品G1の在庫の価格と、余剰個数「2個」の注文商品G2の在庫の価格と、を除外する。その後、従業員は、除外後に残る複数の価格の合計価格を算出し、算出された価格が受取在庫の合計価格であると判断する。受取在庫の合計価格とは、受取人によって選択されて受け取られた注文個数「1個」の注文商品G1の在庫の価格と、注文個数「2個」の注文商品G2の在庫の価格と、注文個数「3個」の注文商品G3の在庫の価格と、の合計価格である。次に、従業員は、受取在庫の合計価格を入力するための操作を情報処理装置100の入力装置105cに行う。
情報処理装置100の入力装置105cが当該操作に応じた信号を出力すると、特定部140は、出力された信号に基づいて、受取在庫の合計価格を特定する(ステップS31)。次に、制御部130は、特定された合計価格に基づいて、注文者の支払金額を算出する。その後、取得部110は、図5のユーザテーブルから、注文者のユーザID「U1」に対応付けられた支払情報を取得し、情報記憶部190が予め記憶する決済サーバのURLを取得する。次に、制御部130は、取得された支払情報に基づいて、算出された支払金額を決済する決済処理を実行する(ステップS32)。このために、制御部130は、算出された支払金額を表す情報と、取得された支払情報と、を含み、かつ、支払情報を用いて支払金額を決済することを求める決済要求を、取得された決済サーバのURLを宛先として、データ通信回路104aへ出力する。
その後、情報処理装置100の制御部130は、注目配送予定の実行が終了したと判別し、図9の配送予定テーブルと、図10の配送商品テーブルと、から、注目配送予定を識別する配送予定ID「DS1」が保存された1又は複数のレコードを削除する(ステップS33)。その後、情報処理装置100は、ステップS11から上記の処理を繰り返す。
移動機600は、例えば、無人地上車両であり、無人で地上を走行可能な走行機である。移動機600は、図14に示すような車輪601及び602を含む複数の車輪を備える車台610と、車台610の上面に設置された格納庫620と、格納庫620に内蔵された情報処理装置690と、を備える。
移動機600の格納庫620は、図15に示すような箱体を有する格納ボックス621を備える。格納ボックス621の箱体は、背板PKと、底板PM、天板PT、及び、並びに、側板PS1及びPS2を備え、これらの板により閉塞されて前方が開放された空間を形成している。側板PS1及びPS2は、互いに平行となり、かつ、背板PKと垂直となるように、背板PKに固定されている。また、底板PM及び天板PTは、側板PS1及びPS2、並びに、背板PKと垂直となるように、側板PS1及びPS2、並びに、背板PKに固定されている。
格納ボックス621の箱体は、底板PM、天板PT、及び、背板PKと垂直となるように、底板PM、天板PT、及び、背板PKに固定されている間仕切板PPと、側板PS2、間仕切板PP、及び、背板PKと垂直となるように、側板PS2、間仕切板PP、及び、背板PKに固定されている棚板PFと、をさらに備える。このため、格納ボックス621の箱体は、棚板PF、天板PT、背板PK、間仕切板PP、及び、側板PS2により閉塞されて前方が開放された空間を形成している第1サブボックスSN1と、底板PM、棚板PF、背板PK、間仕切板PP、及び、側板PS2により閉塞されて前方が開放された空間を形成している第1サブボックスSN2と、を有している。第1サブボックスSN1及びSN2は、在庫の重量が均一性を有さない1又は複数の商品を格納するためにそれぞれ用いられる。また、格納ボックス621の箱体は、底板PM、天板PT、背板PK、側板PS1、及び、間仕切板PPにより閉塞されて前方が開放された空間を形成している第2サブボックスSUをさらに有する。第2サブボックスSUは、在庫の重量が均一性を有する1又は複数の商品を格納するために用いられる。
天板PTの下側の面には、例えば、ストロボスコープを備えたデジタルカメラである撮像装置CR1が設置されている。撮像装置CR1の設置位置、光軸、及び、画角は、第1サブボックスSN1の内部が撮像範囲に含まれるが、第2サブボックスSUの内部が撮像範囲に含まれないように調整されている。すなわち、撮像装置CR1の設置位置、光軸、及び、画角は、第1サブボックスSN1を構成する棚板PFの上側の面が撮像装置CR1の撮像範囲に含まれるように調整されている。このため、第1サブボックスSN1に1又は複数の商品が格納されると、撮像装置CR1の撮像範囲には、第1サブボックスSN1に格納された当該1又は複数の商品が含まれる。これに対して、撮像装置CR1の設置位置、光軸、及び、画角は、第2サブボックスSUを構成する底板PMの上側の面が撮像装置CR1の撮像範囲に含まれないように調整されている。このため、第2サブボックスSUに1又は複数の商品が格納されても、撮像装置CR1の撮像範囲には、第2サブボックスSUに格納された当該1又は複数の商品が含まれない。
実店舗の従業員は、在庫を密封するフィルムに貼付されたラベルが在庫の上側となるように、第1サブボックスSN1を形成する棚板PFの上側の面に在庫を配置する。すなわち、従業員は、在庫の上側からラベルが視認可能となるように在庫を配置する。また、従業員は、複数の在庫を配置する場合、複数の在庫が互いに重ならないように棚板PFに配置する。すなわち、従業員は、複数の在庫の上側から、複数の在庫のラベルが視認可能となるように、当該複数の在庫を配置する。天板PTは、1又は複数の在庫が配置される棚板PFよりも上側に位置するため、天板PTの下側の面に設置された撮像装置CR1で生成される撮像画像には、棚板PFに配置された1又は複数の在庫のラベルに対応する画像領域が含まれる。撮像装置CR1は、予め定められた周期で、ストロボスコープを点灯させて撮像を行い、撮像により得られた画像を表す信号を情報処理装置690へ出力する。
棚板PFの下側の面には、撮像装置CR2が設置されている。撮像装置CR2の構成及び機能は、天板PTに設置されている撮像装置CR1の構成及び機能と同様であり、撮像装置CR2の設置位置、光軸、及び、画角は、第1サブボックスSN2の内部が撮像範囲に含まれるように調整されている。すなわち、撮像装置CR2の設置位置、光軸、及び、画角は、底板PMの上側の面であり、かつ、第1サブボックスSN2を構成する間仕切板PPと、側板PS2と、で挟まれた面が撮像装置CR2の撮像範囲に含まれるように調整されている。このため、撮像装置CR2で生成される撮像画像には、第1サブボックスSN2に格納された1又は複数の在庫のラベルに対応する画像領域が含まれる。
格納ボックス621箱体の開口部には、図14に示すような扉621aと、扉621aを受け止める扉枠621bと、が設置されている。扉621aは、カンヌキであるデッドボルト621cを備え、扉枠621bは、デッドボルト621cの受座であるストライク621dを備える。
移動機600が備える格納ボックス621の扉621aは、移動機600の情報処理装置690から出力される信号に従って、デッドボルト621cをストライク621dへ挿入させる不図示のモータをさらに備えている。また、当該モータは、情報処理装置690から出力される信号に従って、デッドボルト621cをストライク621dから抜出させる。デッドボルト621cがストライク621dへ挿入されると、格納ボックス621の扉621aが施錠される。デッドボルト621cがストライク621dから抜出されると、格納ボックス621の扉621aが解錠される。
移動機600は、車台610の前面に設置されたLiDAR(Light Detection and Ranging)センサ641と、車台610の後面に設置された不図示のLiDARセンサと、をさらに備える。移動機600が備える前面のLiDARセンサ641は、移動機600の前方向を基準の方位として用いる場合に、当該基準の方位となす方位角が-90度から+90度まで、かつ、移動機600の前方向となす仰角が-90度から+90度までの範囲に含まれる複数の方向へレーザー光を照射する。前面のLiDARセンサ641は、照射されたレーザー光の反射光を受光し、レーザー光の照射から反射光の受光までの時間に基づいて、レーザー光が反射された複数の反射点までの距離を計測する。次に、前面のLiDARセンサ641は、レーザー光の照射方向と計測された距離とに基づいて、移動機600の中心点を原点として用いた三次元座標系における座標値を、複数の反射点について算出する。その後、前面のLiDARセンサ641は、算出された複数の反射点の座標値を移動機600の情報処理装置690へ出力する。
移動機600が備える後面のLiDARセンサは、移動機600の後方向を基準の方位として用いる場合に、当該基準の方位となす方位角が-90度から+90度まで、かつ、移動機600の後方向となす仰角が-90度から+90度までの範囲に含まれる複数の方向へ赤外線のレーザー光を照射する。また、後面のLiDARセンサは、照射されたレーザー光の複数の反射点について移動機600の三次元座標系における座標値を算出し、算出された複数の反射点の座標値を移動機600の情報処理装置690へ出力する。
移動機600が備える前面のLiDARセンサ641及び後面のLiDARセンサが複数の反射点の座標値を情報処理装置690へ出力するのは、例えば、障害物等の物体を回避して走行するために、移動機600の情報処理装置690が、移動機600を基準として用いた全方向にある物体の三次元空間における座標値及びサイズ等を特定するためである。
移動機600の情報処理装置690は、図16に示すようなハードウェアであるCPU691、RAM692、ROM693a、フラッシュメモリ693b、データ通信回路694a、ビデオカード695a、ディスプレイパネル695b、入力装置695c、位置計測回路696、入出力ポート698、及び、駆動回路699を備える。本実施例では、移動機600は、1つのCPU691を備えるが、複数のCPUを備えても良い。また、移動機600は、複数のRAM及びフラッシュメモリを備えても良い。
移動機600が備えるCPU691、RAM692、ROM693a、データ通信回路694a、ビデオカード695a、及び、ディスプレイパネル695bの構成及び機能は、情報処理装置100が備えるCPU101、RAM102、ROM103a、データ通信回路104a、ビデオカード105a、及び、ディスプレイパネル105bの構成及び機能と同様である。移動機600が備えるフラッシュメモリ693bは、各種のプログラムと、プログラムの実行に用いられる各種のデータ及びデータが保存されたテーブルと、を記憶している。入力装置695cは、タッチパッド、及び、ボタンの少なくとも1つであり、実店舗の従業員の操作に応じた信号を出力する。
移動機600の位置計測回路696は、QZSS(Quasi-Zenith Satellite System)回路である。位置計測回路696は、準天頂衛星から発せられた信号を受信し、受信された信号に基づいて移動機600の位置を表す緯度、経度、及び、高度を計測し、計測された緯度、経度、及び、高度を表す信号を出力する。位置計測回路696は、QZSS回路ではなく、GPS(Global Positioning System)衛星から発せられたGPS信号を受信し、受信されたGPS信号に基づいて移動機600の位置を表す緯度、経度、及び、高度を計測するGPS回路であっても良い。
移動機600の入出力ポート698は、格納ボックス621の内部に設置された撮像装置CR1及びCR2にそれぞれ接続された不図示のケーブルに接続されており、撮像装置CR1及びCR2がそれぞれ出力する信号をCPU691へ入力する。また、移動機600の入出力ポート698は、前面のLiDARセンサ641及び後面のLiDARセンサとそれぞれ接続された不図示のケーブルに接続されている。入出力ポート698は、前面のLiDARセンサ641及び後面のLiDARセンサがそれぞれ出力する座標値を表す信号をCPU691へ入力する。
移動機600の駆動回路699は、複数の車輪を回転させる不図示のモータにそれぞれ接続された不図示のケーブルに接続されている。駆動回路699は、CPU691が出力する制御信号に従って当該モータを駆動させることで、複数の車輪を回転させる。また、移動機600の駆動回路699は、格納ボックス621が備える不図示のモータに接続されたケーブルに接続されている。駆動回路699は、CPU691が出力する信号に従って当該モータを駆動させることで、格納ボックス621を施錠又は解錠する。
図11のステップS15で行われる指示に従って、移動機600の格納ボックス621の第1サブボックスSN1に積載個数「2個」の注文商品G1の在庫が格納され、第1サブボックスSN2に積載個数「4個」の注文商品G2の在庫が格納され、かつ、第2サブボックスSUに積載個数「3個」の注文商品G3の在庫が格納された後、移動機600のデータ通信回路694aは、ステップS16で出力された施錠命令を受信する。次に、移動機600のCPU691は、格納ボックス621を施錠させる制御信号を駆動回路699へ出力する。これにより、移動機600は、格納ボックス621を施錠する。
その後、移動機600のデータ通信回路694aが、図11のステップS17で出力された画像送信命令を受信すると、CPU691は、格納ボックス621の第1サブボックスSN1のサブボックスID「SN1」と、第1サブボックスSN2のサブボックスID「SN2」と、をフラッシュメモリ693bから取得する。次に、CPU691は、第1サブボックスSN1の撮像装置CR1から出力される信号に基づいて、注文商品G1の画像情報を取得し、取得された注文商品G1の画像情報と、サブボックスID「SN1」と、を、情報処理装置100を宛先としてデータ通信回路694aへ出力する。移動機600のデータ通信回路694aは、注文商品G1の画像情報と、サブボックスID「SN1」と、を、情報処理装置100へ送信する。同様に、移動機600のCPU691は、第1サブボックスSN2の撮像装置CR2から出力される信号に基づいて、注文商品G2の画像情報を取得し、取得された注文商品G2の画像情報と、サブボックスID「SN2」と、を、情報処理装置100を宛先としてデータ通信回路694aへ出力する。データ通信回路694aは、注文商品G2の画像情報と、サブボックスID「SN2」と、を、情報処理装置100へ送信する。
その後、移動機600のデータ通信回路694aが、図11のステップS20で送信された移動命令を情報処理装置100から受信すると、移動命令に従って、実店舗の位置Sから配送先の位置D1へ移動するため、移動機600のCPU691は、図17に示すような移動処理を実行する。移動処理の実行を開始すると、移動機600のCPU691は、データ通信回路694aから移動命令を取得し(ステップS61)、取得された移動命令から移動経路PSD1を表す情報を取得する(ステップS62)。
次に、移動機600のCPU691は、位置計測回路696から出力される信号に基づいて、移動機600の緯度、経度、及び、高度を特定する。その後、CPU691は、特定された緯度、経度、及び、高度と、移動経路PSD1に含まれる1又は複数の未到着のノードの内で最も到着順が早いノードの緯度、経度、及び、高度と、の相違を縮小させるように移動するための制御信号を生成する。その後、CPU691は、生成された制御信号を駆動回路699へ出力する(ステップS63)。これにより、移動機600は、複数の車輪を回転させて、移動経路PSD1を順行移動する。
その後、移動機600のCPU691は、移動経路に含まれる1又は複数のノードの全てに到着したか否かに基づいて、移動経路PSD1の終点である配送先の位置D1に到着したか否かを判別する(ステップS64)。このとき、1又は複数のノードの全てに到着した訳ではないため、終点に到着していないと判別すると(ステップS64;No)、ステップS63から上記処理を繰り返す。
これに対して、移動機600のCPU691は、1又は複数のノードの全てに到着したため、終点に到着したと判別すると(ステップS64;Yes)、複数の車輪の回転を停止させるための制御信号を駆動回路699へ出力する。これにより、移動機600は、移動経路PSD1の終点で駐車又は停車を行うことで、当該終点での滞在を開始する。その後、CPU691は、移動機600が当該終点に到着したことを告げる到着報告を、情報処理装置100を宛先としてデータ通信回路694aへ出力してから(ステップS65)、移動処理の実行を終了する。その後、移動機600のデータ通信回路694aは、情報処理装置100へ到着報告を送信する。
配送先の位置D1に移動機600が到着すると、位置D1で移動機600を待っていた、又は、移動機600の到着後に位置D1に到着した受取人は、パスワードを入力するための操作を移動機600に行う。移動機600の入力装置695cが、ユーザの操作に応じた信号を出力すると、移動機600のCPU691は、注文商品G1からG3の在庫をユーザに受け渡すため、図18に示すような受渡処理を実行する。受渡処理の実行を開始すると、移動機600のCPU691は、入力装置695cが出力する信号に基づいて、入力されたパスワードを取得する(ステップS71)。次に、CPU691は、取得されたパスワードを表す情報を含み、かつ、パスワードを用いた認証を要求する認証要求を、情報処理装置100を宛先としてデータ通信回路694aへ出力する(ステップS72)。移動機600のデータ通信回路694aは、認証要求を情報処理装置100へ送信する。
移動機600のCPU691は、認証要求を出力してから、予め定められた時間が経過しても、パスワード認証が失敗したことを告げる認証失敗報告、及び、パスワード認証が成功した場合に送信される解錠命令のどちらもデータ通信回路694aが受信しない場合、又は、認証要求を出力してから予め定められた時間が経過する前に、認証失敗報告をデータ通信回路694aが受信する場合に、パスワード認証が失敗したと判別する(ステップS73;No)。次に、CPU691は、認証が失敗したことを知らせるメッセージと、パスワードの再入力を促すメッセージと、をディスプレイパネル695bに表示させた後に(ステップS74)、ステップS71から上記処理を繰り返す。
これに対して、移動機600のCPU691は、認証要求を出力してから予め定められた時間が経過する前に、解錠命令をデータ通信回路694aが受信する場合に、パスワード認証が成功したと判別する(ステップS73;Yes)。その後、移動機600のCPU691は、データ通信回路694aから解錠命令を取得し(ステップS75)、取得された解錠命令に従って、格納ボックス621を解錠させる制御信号を駆動回路699へ出力する。これにより、移動機600は、格納ボックス621を解錠する(ステップS76)。
受取人は、解錠された格納ボックス621を覗き込み、格納ボックス621に積載された積載個数「2個」の注文商品G1の在庫から、注文個数「1個」の注文商品G1の在庫を選択して受け取る。また、受取人は、格納ボックス621に積載された積載個数「4個」の注文商品G2の在庫から、注文個数「2個」の注文商品G2の在庫を選択して受け取り、格納ボックス621に積載された積載個数「3個」の注文商品G3の在庫の全てを受け取る。その後、受取人は、受け取りの完了を表す信号を出力させるための操作を入力装置695cに行う。
移動機600のCPU691は、入力装置695cが受け取りの完了を表す信号を出力したか否かを判別する(ステップS77)。このとき、受け取りの完了を表す信号が出力されていないと判別すると(ステップS77;No)、CPU691は、予め定められた時間に亘りスリープした後に、ステップS77の処理を繰り返す。これに対して、受け取りの完了を表す信号が出力されていると判別すると(ステップS77;Yes)、CPU691は、注文個数「1個」の注文商品G1の在庫、注文個数「2個」の注文商品G2の在庫、及び、注文個数「3個」の注文商品G3の在庫が受取人へ受け渡されたことを告げる受渡報告を生成する。その後、CPU691は、情報処理装置100を宛先として受渡報告をデータ通信回路694aへ出力する(ステップS78)。次に、移動機600のデータ通信回路694aが受渡報告を情報処理装置100へ送信した後に、CPU691は、受渡処理の実行を終了する。
端末装置700は、例えば、スマートフォン、又は、タブレット型若しくはノートブック型のパーソナルコンピュータである。端末装置700は、ハードウェアである不図示のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、音声通信回路、ビデオカード、ディスプレイパネル、入力装置、位置計測回路、撮像装置、スピーカ、及び、マイクロフォンを備える。端末装置700は、複数のCPUを備えても良いし、複数のRAM及びフラッシュメモリを備えても良い。
端末装置700のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、ビデオカード、ディスプレイパネル、入力装置、及び、位置計測回路の構成及び機能は、移動機600のCPU691、RAM692、ROM693a、フラッシュメモリ693b、データ通信回路694a、ビデオカード695a、ディスプレイパネル695b、入力装置695c、及び、位置計測回路696の構成及び機能と同様である。
端末装置700の音声通信回路は、不図示の基地局と電波を用いた音声通信を行う。端末装置700の撮像装置は、デジタルカメラであり、撮像により得られた画像を表す信号を出力する。端末装置700のスピーカは、CPUが出力する信号に従って音声を出力し、端末装置700のマイクロフォンは、端末装置700の周囲の音声を表す信号を出力する。
これらの構成によれば、情報処理装置100は、在庫毎に重量が異なる商品G1が注文された場合、注文個数「1個」よりも多い積載個数「2個」、注文商品G1の在庫を移動機600に積載させる指示を行う指示部120を備える。このため、情報処理装置100は、注文された個数「1個」よりも多い個数「2個」、注文された商品G1を移動機600に積載させる指示を行うことができる。また、従業員が指示に従って、積載個数「2個」の注文商品G1の在庫を移動機600に積載し、かつ、移動機600が配送先の位置D1に到着すれば、積載個数「2個」の注文商品G1の在庫から注文個数「1個」の注文商品G1の在庫を受取人が選択可能になる。このため、積載個数「2個」の在庫の重量が互いに異なれば、好みや用途に合った重量の在庫を「1個」受取人が選択できるようになる。
また、これらの構成によれば、注文商品G1は、重量について表示形態が同一のウェブ頁を用いて注文された商品である。このため、当該ウェブ頁で、配送される注文商品G1の在庫の選択、及び、配送される注文商品G1の在庫の重量の選択ができなかったとしても、移動機600に積載された注文商品G1の在庫の重量が互いに異なれば、注文後に、受取人が、好みや用途に合った重量の在庫を選択できるようになる。
さらに、これらの構成によれば、情報処理装置100は、移動機600が注文商品G1の配送先の位置D1に到着するよりも前に、積載個数「2個」の注文商品G1の在庫を撮像することで得られた撮像画像を表す画像情報を、注文者が使用する端末装置700へ送信するデータ通信回路104aをさらに備える。このため、注文者である受取人、又は、注文者に受け取りを依頼された者である受取人は、移動機600が配送先の位置D1に到着する前に、積載個数「2個」の在庫からどれを選択して受け取るかを検討できる。このため、移動機600が配送先の位置D1に到着してから受取人が検討を開始する場合と比べて、情報処理装置100は、移動機600が配送先の位置D1に到着してから、検討を終えた受取人が注文個数「2個」の注文商品G1を選択して受け取るまでの時間を短くできるため、移動機600の位置D1における停車時間を短縮できる。このため、情報処理装置100は、移動機600が配送先の位置D1に到着してから受取人が検討を開始する場合と比べて、移動機600の配送効率を向上できる。移動機600の配送効率は、例えば、単位時間当たり移動機600が配送する商品の数、又は、受取人によって受け取られる商品の数で表される。
これらの構成によれば、移動機600は、第1サブボックスSN1と、第2サブボックスSUと、第1サブボックスSN1の内部を撮像範囲に含むが、第2サブボックスSUの内部を撮像範囲に含まない撮像装置CR1と、を有する格納ボックス621を備える。情報処理装置100の指示部120は、注文個数「1個」よりも多い積載個数「2個」、注文商品G1の在庫を移動機600の第1サブボックスSN1に積載させる指示を行う。また、情報処理装置100のデータ通信回路104aは、積載個数「2個」の在庫を撮像装置CR1が撮像することで得られた撮像画像を表す画像情報を、注文者の端末装置700へ送信する。これらの構成によれば、例えば、実店舗の従業員が、例えば、デジタルカメラを操作することで、積載個数「2個」の在庫の撮像画像を生成させる場合と比べて、情報処理装置100は、従業員の手間を省くことができるだけでなく、移動機600が配送先の位置D1へ向けて出発するための準備に要する時間を短くできる。
<実施例1の変形例1>
実施例1では、商品G1の在庫は、重量について表示形態が同一のウェブ頁を用いて注文されるが、商品G1の在庫の重量は均一性を有さないと説明した。しかし、これに限定される訳では無く、商品G1の在庫は、例えば、容量について表示形態が同一のウェブ頁を用いて注文されるが、商品G1の在庫の容量は均一性を有さなくとも良い。同様に、商品G2の在庫は、例えば、容量について表示形態が同一のウェブ頁を用いて注文されるが、商品G2の在庫の容量は均一性を有さなくとも良い。また、実施例1では、商品G3の在庫の重量が均一性を有すると説明したが、これに限定される訳では無く、商品G3の在庫の容量が均一性を有しても良い。商品G3の在庫は、容量について表示形態が同一のウェブ頁を用いて注文されても良い。
<実施例1の変形例2>
実施例1では、商品G1の在庫の重量が均一性を有さないとは、商品G1の在庫が実店舗に複数存在する場合、当該複数の在庫の重量がそれぞれ異なることを意味すると説明したが、これに限定される訳でない。商品G1の在庫の重量が均一性を有さないとは、商品G1の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G1の2つの在庫を無作為に抽出すると、抽出された2つの在庫の重量を表す物理量が、商品G1に応じて予め定められる物理量以上異なる確率が、予め定められる閾値よりも高いことを意味しても良い。
商品G1に応じて予め定められる重量は、「0」以上の値であれば、どのような値であっても良く、かつ、予め定められる閾値の好適な値は、正の値であれば、どのような値であっても良い。商品G1に応じて予め定められる重量、及び、予め定められる閾値の好適な値は、当業者が実験により定めることができる。また、当業者は、当該確率を実験により特定できる。すなわち、当該確率は、商品G1の2つの在庫を複数の商品G1の在庫から、実験において無作為に抽出した回数に対する、抽出された2つの在庫の計測された重量を表す物理量が、商品G1に応じて予め定められる物理量以上異なっていることが実験において観測された回数の割合で表されても良い。
同様に、商品G2の在庫の重量が均一性を有さないとは、商品G2の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G2の2つの在庫を無作為に抽出すると、抽出された2つの在庫の重量が、商品G2に応じて予め定められる重量以上異なる確率が、予め定められる閾値よりも高いことを意味しても良い。商品G2に応じて予め定められる重量は、正の値であれば、どのような値であっても良く、好適な値は、当業者が実験により定めることができる。
さらに、実施例1では、商品G3の在庫の重量が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫の重量がそれぞれ同じであることを意味すると説明したが、これに限定される訳でない。商品G3の在庫の重量が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G3の2つの在庫を無作為に抽出すると、抽出された2つの在庫の重量を表す物理量が、商品G3に応じて予め定められる物理量以上異なる確率が、予め定められる閾値以下であることを意味しても良い。商品G3に応じて予め定められる重量は、正の値であれば、どのような値であっても良く、好適な値は、当業者が実験により定めることができる。
これらの構成によれば、情報処理装置100は、注文商品G1を識別する商品ID「G1」と、注文個数「1個」を表す情報と、を含み、かつ、注文個数「1個」の注文商品G1の注文を受け付けるように求める注文受付要求を取得する取得部110を備える。取得部110は、商品を識別する商品IDと、当該商品の複数の在庫から2つの在庫を抽出する場合、抽出される2つの在庫の重量が互いに異なる確率が予め定められる閾値よりも高いか否かを表す均一性フラグと、を対応付けて記憶する情報記憶部190から、取得された注文受付要求に含まれる商品IDに対応付けられた均一性フラグを取得する。また、指示部120は、当該確率が当該閾値よりも高いことを、取得された均一性フラグが表すと、在庫毎に重量が異なる商品が注文されたと判別する。また、指示部120は、注文受付要求で表される注文個数「1個」よりも多い積載個数「2個」、注文受付要求で識別される注文商品G1の在庫を移動機600に積載させる指示を行う。このため、予め定められる閾値よりも高い確率で重量が互いに異なる注文商品G1の在庫を移動機600に積載させるように指示できる。
<実施例1の変形例3>
実施例1又は実施例1の変形例1では、商品G1の在庫は、重量又は容量を含む量について表示形態が同一のウェブ頁を用いて注文されるが、商品G1の在庫の量は均一性を有さないと説明した。しかし、これに限定される訳では無く、本変形例では、商品G1の在庫は、質について表示形態が同一のウェブ頁を用いて注文されるが、商品G1の在庫の質は均一性を有さない。同様に、商品G2の在庫は、質について表示形態が同一のウェブ頁を用いて注文されるが、実際には、商品G2の在庫の質は均一性を有さない。これに対して、本変形例では、商品G3の在庫の質が均一性を有している。商品G3の在庫は、質について表示形態が同一のウェブ頁を用いて注文されても良い。
本変形例において、商品G1の在庫の質は、商品G1の在庫の大きさを含み、商品G2の在庫の質及び商品G3の質は、それぞれ商品G2の在庫の大きさ及び商品G3の大きさを含む。また、本変形例において、商品G1の在庫の大きさは均一性を有さない。商品G1の在庫の大きさが均一性を有さないとは、商品G1の在庫が実店舗に複数存在する場合、当該複数の在庫の大きさがそれぞれ異なることを意味する。同様に、本変形例において、商品G2の在庫の大きさは均一性を有さない。これに対して、商品G3の在庫の大きさは均一性を有している。商品G3の在庫の大きさが均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫の大きさがそれぞれ同じことを意味する。
本変形例において、商品G1の在庫の大きさは、商品G1の在庫の厚さ又は高さ、幅、奥行き、体積、及び、表面積の少なくとも1つを含む。同様に、商品G2の在庫の大きさ及び商品G3の在庫の大きさは、商品G2及びS3の在庫の厚さ又は高さ、幅、奥行き、体積、及び、表面積の少なくとも1つをそれぞれ含む。在庫の大きさを表す物理量は、当該在庫に貼付されているラベルに印字されていても良い。
<実施例1の変形例4>
実施例1の変形例3において、商品G1からG3の在庫の質は、それぞれ商品G1からG3の在庫の大きさを含むと説明したが、これに限定される訳ではない。本変形例において、商品G1の在庫の質は、商品G1の在庫の鮮度を含み、商品G2の在庫の質及び商品G3の在庫の質は、それぞれ商品G2の在庫の鮮度及び商品G3の在庫の鮮度を含む。また、本変形例において、商品G1の在庫の鮮度は均一性を有さない。商品G1の在庫の鮮度が均一性を有さないとは、商品G1の在庫が実店舗に複数存在する場合、当該複数の在庫の鮮度がそれぞれ異なることを意味する。同様に、本変形例において、商品G2の在庫の鮮度は均一性を有さない。これに対して、商品G3の在庫の鮮度は均一性を有している。商品G3の在庫の鮮度が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫の大きさがそれぞれ同じことを意味する。本変形例では、在庫の鮮度は、例えば、システム日時から、当該在庫の消費期限までの時間長を含む物理量で表される。
本変形例では、商品の在庫の鮮度は、システム日時から当該在庫の消費期限までの時間長で表されると説明したが、これに限定される訳ではない。商品の在庫の鮮度は、当該在庫の消費期限、又は、加工日時で表されても良い。また、商品の在庫の鮮度は、当該在庫の色を表すR値、G値、及び、B値で表されても良い。さらに、商品の在庫の鮮度は、当該在庫に付着している細菌の数で表されても良いし、例えば、K値を含む指標によって表されても良い。在庫の鮮度を表す物理量は、当該在庫に貼付されているラベルに印字されていても良い。
<実施例1の変形例5>
実施例1の変形例3において、商品G1からG3の在庫の質は、それぞれ商品G1からG3の在庫の大きさを含むと説明したが、これに限定される訳ではない。本変形例において、商品G1の在庫の質は、商品G1の在庫の部位を含み、商品G2の在庫の質及び商品G3の在庫の質は、それぞれ商品G2の在庫の部位及び商品G3の在庫の部位を含む。また、本変形例において、商品G1の在庫の部位は均一性を有さない。商品G1の在庫の部位が均一性を有さないとは、商品G1の在庫が実店舗に複数存在する場合、当該複数の在庫の部位がそれぞれ異なることを意味する。同様に、本変形例において、商品G2の在庫の部位は均一性を有さない。これに対して、商品G3の在庫の部位は均一性を有している。商品G3の在庫の部位が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫の部位がそれぞれ同じことを意味する。
本変形例では、商品G1は、「フライドチキン」であり、商品G1の在庫の部位は、「ウィング」、「キール」、「リブ」、「サイ」、及び、「ドラム」を含む。しかし、これに限定される訳では無く、商品G1は、例えば、鯖を含む魚であり、商品G1の在庫の部位は、頭と尾との間で2つに切られた魚の切り口よりも頭側の部分である「前半分」と、切り口よりも尾側の部分である「後半分」と、を含んでも良い。さらに、商品G1は、例えば、大根を含む根菜であり、商品G1の在庫の部位は、葉又は茎と根との境界と、根の先端と、の中間で2つに切られた根菜の切り口よりも葉又は茎側の部分である「上半分」と、切り口よりも根の先端側の部分である「下半分」と、を含んでも良い。
またさらに、商品G1は、牛肉であり、商品G1の在庫の部位は、タン、肩ロース、リブロース、Tボーン、サーロイン、ヒレ、ランプ、バラ、モモ、及び、スネの少なくとも1つを含んでも良い。さらに、商品G1は、豚肉であり、商品G1の在庫の部位は、肩ロース、ロース、ヒレ、ランプ、バラ、モモ、及び、スネの少なくとも1つを含んでも良い。在庫の部位を表す文字列は、当該在庫に貼付されているラベルに印字されていても良い。
<実施例1の変形例6>
実施例1の変形例3から5において、商品G1からG3の在庫の質は、それぞれ商品G1からG3の在庫の大きさ、鮮度、及び、部位を含むと説明した。しかし、商品G1の質は、これらに限定される訳では無く、外見から確認できる商品G1の在庫の特徴又は性質であれば、どのようなものであっても良い。例えば、商品G1が肉である場合、商品G1の在庫の質は、商品G1の在庫の外観から確認可能な赤身と脂身との割合であっても良い。同様に、商品G2及びG3の在庫の質は、外見から確認できる商品G2及びG3の在庫の特徴又は性質であれば、どのようなものであっても良い。
また、商品G1の在庫の質は、外見から確認できる商品G1の在庫の特徴又は性質に限定される訳では無く、外見から確認できない商品G1の在庫の特徴又は性質であっても良く、商品G1の在庫に貼付されるラベルには、外見から確認できない特徴若しくは性質、又は、外見から確認できない特徴若しくは性質を表す物理量が記載されていても良い。例えば、商品が果実である場合、当該商品の在庫の質は、当該商品の在庫の外観から確認不能であるが、当該在庫に照射された近赤外線を含む光の内で、当該在庫を透過した光の波長及び強度に基づいて計測可能な糖度及び酸度の少なくとも1つを含んでも良い。この場合、当該商品の在庫に貼付されたラベルには、計測された糖度及び酸度の少なくとも1つが記載されていても良い。
<実施例1の変形例7>
実施例1の変形例2と実施例1の変形例3とは、組み合わせることができる。このため、商品の在庫の大きさが均一性を有するとは、商品の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品の2つの在庫を無作為に抽出すると、抽出された2つの在庫の大きさを表す物理量が、商品に応じて予め定められる物理量以上異なる確率が、予め定められる閾値以下であることを意味しても良い。これに対して、商品の在庫の大きさが均一性を有さないとは、商品の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品の2つの在庫を無作為に抽出すると、抽出された2つの在庫の大きさを表す物理量が、商品に応じて予め定められる物理量以上異なる確率が、予め定められる閾値よりも高いことを意味しても良い。
また、実施例1の変形例2と、商品の在庫の質が当該在庫の鮮度を含む実施例1の変形例4とは、組み合わせることができる。さらに、実施例1の変形例2と、商品の在庫の質が当該在庫の部位を含む実施例1の変形例5とは、組み合わせることができる。このため、商品の在庫の部位が均一性を有するとは、商品の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品の2つの在庫を無作為に抽出すると、抽出された2つの在庫の部位が互いに異なる確率が、予め定められる閾値以下であることを意味しても良い。これに対して、商品の在庫の部位が均一性を有さないとは、商品の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品の2つの在庫を無作為に抽出すると、抽出された2つの在庫の部位が互いに異なる確率が、予め定められる閾値よりも高いことを意味しても良い。
<実施例1の変形例8>
商品G1の在庫の量と商品G2の在庫の量とが均一性を有さず、かつ、商品G3の在庫の量が均一性を有する実施例1と、商品G1の在庫の質と商品G2の在庫の質とが均一性を有さず、かつ、商品G3の在庫の質が均一性を有する実施例1の変形例3と、は、組み合わせることができる。このため、商品G1の在庫の量及び質の少なくとも1つが均一性を有さず、商品G2の在庫の量及び質の少なくとも1つが均一性を有さず、かつ、商品G3の在庫の量及び質の双方が均一性を有しても良い。
<実施例1の変形例9>
実施例1では、情報処理装置100の制御部130は、図11のステップS19において、注文商品G1の画像情報、及び、注文商品G2の画像情報が追加された配送予定通知を出力してから、ステップS20において移動命令を出力することで、配送先の位置D1へ移動機600を移動させる制御を開始すると説明した。しかし、注文商品G1の画像情報、及び、注文商品G2の画像情報が含まれる配送予定通知が出力されるタイミングは、配送先の位置D1へ移動機600を移動させる制御を開始する前に限定される訳では無い。配送予定通知が出力されるタイミングは、移動機600が配送先の位置D1へ到着するよりも前のタイミングであれば、位置D1へ移動機600を移動させる制御を開始した後のタイミングであっても良い。すなわち、配送予定通知が出力されるタイミングは、ステップS20の実行タイミング以降、かつ、ステップS21で移動機600の到着報告が取得されたと判別されるタイミングより前のタイミングであれば、どのようなタイミングであっても良い。
<実施例1の変形例10>
実施例1では、格納ボックス621は、在庫の重量が均一性を有さない商品を格納するために用いられる第1サブボックスSN1及びSN2を有すると説明したが、これに限定される訳では無い。格納ボックス621は、例えば、在庫の重量が均一性を有さない商品を格納するために用いられる1つの第1サブボックス、又は、3個以上の第1サブボックスを有しても良い。また、実施例1では、格納庫620は、1個の格納ボックス621を備えると説明したが、これに限定される訳では無く、例えば、2個以上の格納ボックス621を備えても良い。
<実施例1の変形例11>
実施例1では、情報処理装置100の指示部120は、図13のステップS46において、注文商品G1の在庫の積載個数を、注文個数「1個」のC倍(但し、Cは自然数)に設定すると説明したが、これに限定される訳ではない。本変形例に係る指示部120は、移動機600の格納ボックス621の空き状況に応じて積載個数を設定する。
このために、本変形例に係る情報処理装置100の情報記憶部190は、商品を識別する商品IDと、在庫の重量が均一性を有さない商品を格納するために用いられる第1サブボックスSN1に積載可能な当該商品の数の最大値Cmaxを表す情報と、を対応付けて記憶している。第1サブボックスSN2に積載可能な当該商品の数の最大値は、第1サブボックスSN1の最大値Cmaxと同じ値である。本変形例に係る取得部110は、ステップS46において、注文商品G1の商品ID「G1」と対応付けられた第1サブボックスSN1の最大値Cmaxを表す情報を取得する。指示部120は、取得された情報で表される最大値Cmaxと、注文商品G1の注文個数「1個」と、に基づいて、第1サブボックスSN1に注文個数「1個」の注文商品G1の在庫を積載させた場合に、第1サブボックスSN1がさらに積載可能な注文商品G1の数を算出する。すなわち、指示部120は、注文商品G1の最大値Cmaxから注文個数「1個」を減算することで、注文商品G1の余剰個数の最大値を算出しても良い。その後、指示部120は、予め定められた規則、又は、ソフトウェア乱数に基づいて、注文商品G1の余剰個数を、「1個」以上、かつ、算出された余剰個数の最大値以下の個数に設定する。すなわち、指示部120は、注文商品G1の積載個数を、余剰個数の最大値以下の個数だけ、注文個数「1個」よりも多い数に設定する。
これらの構成によれば、情報処理装置100の指示部120は、移動機600の第1サブボックスSN1が積載可能な商品G1の在庫の数Cmaxと、注文個数「1個」と、に基づいて、移動機600の第1サブボックスSN1に注文個数「1個」の注文商品G1の在庫を積載させた場合に、移動機600の第1サブボックスSN1がさらに積載可能な注文商品G1の在庫の数を算出する。また、指示部120は、注文商品G1の積載個数を、算出された数以下の数だけ、注文商品G1の注文個数「1個」よりも多い数に設定する。このため、情報処理装置100は、移動機600の格納ボックス621が有する第1サブボックスSN1の利用効率を向上させることができる。第1サブボックスSN1の利用効率は、例えば、単位時間当たり、又は、移動機600による単位距離の移動当たり、移動機600の第1サブボックスSN1に格納されている商品の数で表される。
<実施例1の変形例12>
実施例1では、情報処理装置100の指示部120は、移動機600に積載させる積載個数「2個」の注文商品G1の在庫の価格と、積載個数「4個」の注文商品G2の在庫の価格と、をメモ帳に記載する又は記憶することを指示すると説明したが、これに限定される訳では無い。本変形例では、指示部120は、移動機600に積載させる積載個数「2個」の注文商品G1の在庫の重量と、積載個数「4個」の注文商品G2の在庫の重量と、をメモ帳に記載する又は記憶することを指示する。このために、指示部120は、そのような指示を表すメッセージをディスプレイパネル105bに表示させる。
移動機600が実店舗に到着すると、実店舗の従業員は、移動機600に格納されている余剰個数「1個」の注文商品G1の在庫の重量と、余剰個数「2個」の注文商品G2の在庫の重量と、を、これらの在庫のラベルを用いて確認する。次に、従業員は、メモ帳に記載されている、又は、従業員が記憶している、積載個数「2個」の注文商品G1の在庫の重量、及び、積載個数「4個」の注文商品G2の在庫の重量から、確認された余剰個数「1個」の注文商品G1の在庫の重量と、余剰個数「2個」の注文商品G2の在庫の重量と、を除外する。その後、従業員は、除外後に残る注文個数「1個」の注文商品G1の在庫の重量を、積載個数「2個」の注文商品G1の在庫から、受取人によって選択されて受け取られた注文個数「1個」の在庫(以下、注文商品G1の受取在庫という)の重量であると判断する。同様に、従業員は、除外後に残る注文個数「2個」の注文商品G2の在庫の重量を、積載個数「4個」の注文商品G2の在庫から、受取人によって選択されて受け取られた注文個数「2個」の在庫(以下、注文商品G2の受取在庫という)の重量であると判断する。その後、従業員は、注文商品G1の商品ID「G1」、及び、注文個数「1個」の注文商品G1の受取在庫の重量と、注文商品G2の商品ID「G2」、及び、注文個数「2個」の注文商品G2の受取在庫の重量と、を入力するための操作を情報処理装置100の入力装置105cに行う。
情報処理装置100の入力装置105cが当該操作に応じた信号を出力すると、特定部140は、出力された信号に基づいて、注文商品G1の商品ID「G1」、及び、注文個数「1個」の注文商品G1の受取在庫の重量を特定する。次に、特定部140は、図6の商品テーブルから、注文商品G1の商品ID「G1」と対応付けられた単位重量当たりの価格「5円/g」を表す情報を取得する。その後、特定部140は、取得された情報で表される単位重量当たりの価格「5円/g」に、注文個数「1個」の受取在庫の重量を乗算することで、注文個数「1個」の注文商品G1の受取在庫の価格を特定する。
同様に、情報処理装置100の特定部140は、入力装置105cから出力された信号に基づいて、注文商品G2の商品ID「G2」、及び、受け取られた注文個数「2個」の注文商品G2の受取在庫の重量を特定する。次に、特定部140は、注文商品G2の単位重量当たりの価格「10円/g」に、注文個数「2個」の受取在庫の重量をそれぞれ乗算することで、注文個数「2個」の注文商品G2の受取在庫の価格を特定する。
次に、情報処理装置100の取得部110は、図6の商品テーブルから、注文商品G3の商品ID「G3」に対応付けられた価格「300円」を表す情報を取得し、特定部140は、取得された情報で表される価格「300円」が、注文個数「3個」の注文商品G3の受取在庫それぞれの価格であると特定する。その後、特定部140は、特定された注文個数「1個」の注文商品G1の受取在庫の価格と、注文個数「2個」の注文商品G2の受取在庫の価格と、注文個数「3個」の注文商品G3の受取在庫の価格と、の総和を算出することで、受取在庫の合計価格を特定する(ステップS31)。
<実施例1の変形例13>
実施例1の変形例12では、実店舗の従業員が、注文商品G1及びG2の受取在庫の重量を判断すると説明したが、これに限定される訳では無い。本変形例では、図19に示すような、移動機600の格納ボックス621が備える計測装置CW1及びCW2でそれぞれ計測された重量を表す重量情報に基づいて、情報処理装置100の特定部140が、注文商品G1及びG2の受取在庫の重量を特定する。
本変形例に係る移動機600の格納ボックス621は、第1サブボックスに格納される1又は複数の商品の合計重量を計測する計測装置CW1を棚板PFの上面に備えている。計測装置CW1は、例えば、ロードセル式、圧電素子式、又は、静電容量式の重量センサであり、不図示のケーブルを介して移動機600が備える情報処理装置690の入出力ポート698に接続されている。計測装置CW1は、第1サブボックスSN1に格納された1又は複数の商品の在庫の合計重量を、予め定められた周期で計測し、計測された合計重量を表す信号を情報処理装置690へ出力する。
移動機600の格納ボックス621は、計測装置CW1の構成及び機能と同様の構成及び機能を有する計測装置CW2を底板PMの上面に備えている。計測装置CW2は、不図示のケーブルを介して移動機600の情報処理装置690に接続されており、第1サブボックスSN2に格納された1又は複数の商品の在庫の合計重量を、予め定められた周期で計測し、計測された合計重量を表す信号を情報処理装置690へ出力する。
本変形例において、情報処理装置100は、図11のステップS16において、積載個数「2個」の注文商品G1の在庫を格納ボックス621の第1サブボックスSN1に積載し、積載個数「4個」の注文商品G2の在庫を第1サブボックスSN2に積載し、かつ、積載個数「3個」の注文商品G3の在庫を第2サブボックスSUに積載した移動機600に、格納ボックス621の施錠を命じる施錠命令を送信する(ステップS16)。
次に、本変形例に係る情報処理装置100は、ステップS17及びS18の処理を実行することで、画像送信命令を移動機600へ送信した後に、注文商品G1の画像情報と、注文商品G2の画像情報と、を移動機600から受信する(ステップS17及びS18)。その後、制御部130は、重量送信命令をデータ通信回路104aに移動機600を宛先として出力する。重量送信命令は、第1サブボックスSN1に積載された積載個数「2個」の注文商品G1の在庫の合計重量を計測し、計測された合計重量を表す重量情報を送信することを命じる命令である。また、重量送信命令は、第1サブボックスSN2に積載された積載個数「4個」の注文商品G2の在庫の合計重量を計測し、計測された合計重量を表す重量情報を送信するように命じる命令でもある。その後、情報処理装置100のデータ通信回路104aは、重量送信命令を移動機600へ送信する。
移動機600のCPU691は、重量送信命令を受信すると、図19の計測装置CW1から出力される信号に基づいて、第1サブボックスSN1に格納された積載個数「2個」の注文商品G1の在庫の合計重量を表す重量情報(以下、注文商品G1の積載重量情報という)を取得する。次に、CPU691は、第1サブボックスSN1を識別するサブボックスID「SN1」と、注文商品G1の積載重量情報と、をデータ通信回路694aへ情報処理装置100を宛先として出力する。その後、移動機600のデータ通信回路694aは、出力されたこれらの情報を情報処理装置100へ送信する。同様に、CPU691は、計測装置CW2から出力される信号に基づいて、第1サブボックスSN2に格納された積載個数「4個」の注文商品G2の在庫の合計重量を表す重量情報(以下、注文商品G2の積載重量情報という)を取得する。次に、CPU691は、サブボックスID「SN2」と、注文商品G2の積載重量情報と、をデータ通信回路694aへ情報処理装置100を宛先として出力する。その後、移動機600のデータ通信回路694aは、出力されたこれらの情報を情報処理装置100へ送信する。
その後に、情報処理装置100のデータ通信回路104aが、サブボックスID「SN1」と、注文商品G1の積載重量情報と、を移動機600から受信すると、取得部110は、これらの情報を取得する。次に、制御部130は、第1サブボックスSN1のサブボックスID「SN1」と、第1サブボックスSN1に積載された注文商品G1の商品ID「G1」と、注文商品G1の積載重量情報と、を対応付けて、情報記憶部190へ保存する。同様に、データ通信回路104aが、サブボックスID「SN2」と、注文商品G2の積載重量情報と、を受信すると、取得部110は、これらの情報を取得する。次に、制御部130は、サブボックスID「SN2」と、商品ID「G2」と、注文商品G2の積載重量情報と、を対応付けて、情報記憶部190へ保存する。
その後、情報処理装置100は、ステップS19からS21の処理を実行することで、移動機600を配送先の位置D1へ移動させる(ステップS19からS21)。次に、情報処理装置100は、ステップS22からS26の処理を実行することで、注文個数「1個」の注文商品G1の在庫と、注文個数「2個」の注文商品G2の在庫と、注文個数「3個」の注文商品G3の在庫と、が受け渡されたことを告げる受渡報告を取得する(ステップS22からS26)。
その後、情報処理装置100は、ステップS27からS30の処理を実行することで、受け取られなかった余剰個数「1個」の注文商品G1の在庫と、余剰個数「2個」の注文商品G2の在庫と、を積載した移動機600を実店舗の位置Sへ移動させる(ステップS27からS30)。その後、情報処理装置100の制御部130は、重量送信命令をデータ通信回路104aに移動機600を宛先として出力し、データ通信回路104aは、重量送信命令を移動機600へ送信する。
移動機600は、重量送信命令を受信すると、図19の計測装置CW1から出力される信号に基づいて、第1サブボックスSN1に格納された余剰個数「1個」の注文商品G1の在庫の重量を表す重量情報(以下、注文商品G1の余剰重量情報という)を取得する。次に、移動機600は、取得された注文商品G1の余剰重量情報と、第1サブボックスSN1のサブボックスID「SN1」と、を情報処理装置100へ送信する。また、移動機600は、計測装置CW2から出力される信号に基づいて、第1サブボックスSN2に格納された余剰個数「2個」の注文商品G2の在庫の合計重量を表す重量情報(以下、注文商品G2の余剰重量情報という)を取得する。次に、移動機600は、取得された注文商品G2の余剰重量情報と、第1サブボックスSN2のサブボックスID「SN2」と、を情報処理装置100へ送信する。
その後に、情報処理装置100のデータ通信回路104aが、サブボックスID「SN1」と、注文商品G1の余剰重量情報と、を移動機600から受信すると、取得部110は、これらの情報を取得する。次に、取得部110は、サブボックスID「SN1」と対応付けて情報記憶部190が記憶する注文商品G1の商品ID「G1」と、注文商品G1の積載重量情報と、を取得する。その後、特定部140は、取得された積載重量情報で表される積載個数「2個」の注文商品G1の在庫の合計重量から、取得された余剰重量情報で表される余剰個数「1個」の注文商品G1の在庫の重量を減算することで、注文個数「1個」の注文商品G1の受取在庫の重量を特定する。次に、取得部110は、図6の商品テーブルから、注文商品G1の商品ID「G1」と対応付けられた単位重量当たりの価格「5円/g」を表す情報を取得する。その後、特定部140は、取得された情報で表される単位重量当たりの価格「5円/g」に、注文個数「1個」の受取在庫の重量を乗算することで、注文商品G1の受取在庫の価格を特定する。
同様に、情報処理装置100のデータ通信回路104aが、サブボックスID「SN2」と、注文商品G2の余剰重量情報と、を受信すると、特定部140は、受信された余剰重量情報と、情報記憶部190にサブボックスID「SN2」と対応付けて記憶されている積載重量情報と、に基づいて、注文個数「2個」の注文商品G2の受取在庫の合計重量を特定する。次に、特定部140は、特定された合計重量と、注文商品G2の単位重量当たりの価格「10円/g」と、に基づいて、注文個数「2個」の注文商品G2の受取在庫の合計価格を特定する。
次に、情報処理装置100の取得部110は、図6の商品テーブルから、注文商品G3の商品ID「G1」に対応付けられた価格「300円」を表す情報を取得し、特定部140は、取得された情報で表される価格「300円」が、注文個数「3個」の注文商品G3の受取在庫それぞれの価格であると特定する。その後、特定部140は、特定された注文個数「1個」の注文商品G1の受取在庫の価格と、注文個数「2個」の注文商品G2の受取在庫の価格と、注文個数「3個」の注文商品G3の受取在庫の価格と、の総和を算出することで、受取在庫の合計価格を特定する(ステップS31)。
<実施例1の変形例14>
実施例1では、実店舗の従業員が、受取在庫の価格を判断すると説明したが、これに限定される訳では無い。本変形例では、不図示のコードリーダーによって、注文商品G1及びG2の在庫に貼付されたラベルから読み取られたコードに基づいて、情報処理装置100の特定部140が受取在庫の価格を特定する。本変形例では、コードは、例えば、バーコードを含む1次元コードであるが、これに限定される訳では無く、例えば、QR(Quick Response)コード(登録商標)を含む2次元コードであっても良い。
本変形例に係る移動機600は、格納庫620の扉621aが設置されている側面に、不図示のコードリーダーを備える。コードリーダーは、レーザー光を空間に照射する不図示の発光素子と、空間に照射されたレーザー光の反射光を受光し、受光した反射光に応じて電気信号を出力する不図示の受光素子群と、を備える。本変形例では、発光素子は、例えば、LED(Light Emitting Diode)であり、受光素子群は、例えば、CCD(Charge Coupled Device)センサ群、又は、CMOS(Complementary Metal Oxide Semiconductor)センサ群であるが、これらに限定される訳では無い。
移動機600のコードリーダーは、受光素子群から出力される信号に基づいて、レーザー光を反射した物体に記載されているコードを検出し、検出されたコードで表される価格を表す情報を出力する不図示の検出回路を備える。コードリーダーの検出回路は、不図示のケーブルを介して、移動機600が備える情報処理装置690の入出力ポート698に接続されている。
本変形例では、情報処理装置100の指示部120は、図11のステップS15において、移動機600に積載させる積載個数「2個」の注文商品G1の在庫にそれぞれ貼付されたラベルに記載されているコードを、移動機600のコードリーダーに読み取らせることを指示する。また、指示部120は、積載個数「4個」の注文商品G2の在庫のコードと、積載個数「3個」の注文商品G3の在庫のコードと、をコードリーダーに読み取らせることを指示する(ステップS15)。このために、指示部120は、そのような指示を表すメッセージをディスプレイパネル105bに表示させる。
従業員は、指示に従って、積載個数「2個」の注文商品G1の在庫のラベルと、積載個数「4個」の注文商品G2の在庫のラベルと、積載個数「3個」の注文商品G3の在庫のラベルと、を移動機600のコードリーダーにかざす。移動機600のコードリーダーは、かざれた在庫に貼付されたラベルに記載されているコードを読み取り、読み取られたコードで表される商品IDと、当該在庫の価格を表す情報と、を情報処理装置100へ出力する。すなわち、コードリーダーは、注文商品G1の商品ID「G1」と、積載個数「2個」の注文商品G1の在庫それぞれの価格を表す情報と、を出力する。また、コードリーダーは、注文商品G2の商品ID「G2」と、積載個数「4個」の注文商品G2の在庫それぞれの価格を表す情報と、を出力し、注文商品G3の商品ID「G3」と、積載個数「3個」の注文商品G3の在庫それぞれの価格を表す情報と、を出力する。
情報処理装置100のデータ通信回路104aが、商品ID「G1」と、積載個数「2個」の注文商品G1の在庫の価格をそれぞれ表す情報と、を受信すると、取得部110は、これらの情報を取得し、制御部130は、取得されたこれらの情報を互いに対応付けて情報記憶部190に保存する。同様に、データ通信回路104aが、商品ID「G2」と、積載個数「4個」の注文商品G2の在庫の価格をそれぞれ表す情報と、を受信すると、制御部130は、これらの情報を互いに対応付けて情報記憶部190に保存する。同様に、制御部130は、商品ID「G3」と、積載個数「3個」の注文商品G3の在庫の価格をそれぞれ表す情報と、を保存する。その後、情報処理装置100は、ステップS16からS18の処理を実行する(ステップS16からS18)。
次に、情報処理装置100の取得部110は、情報記憶部190から、商品ID「G1」と対応付けられた積載個数「2個」の情報を取得する。その後、制御部130は、取得された情報でそれぞれ表される積載個数「2個」の注文商品G1の在庫の価格が互いに相違するか否かを判別する。このとき、制御部130は、価格が互いに相違すると判別すると、積載個数「2個」の注文商品G1の在庫の価格の低い方の価格と、高い方の価格と、を表すメッセージ(以下、注文商品G1の価格メッセージという)を生成する。これに対して、価格が互いに同じであると判別すると、積載個数「2個」の注文商品G1の在庫の共通価格を表すメッセージを、注文商品G1の価格メッセージとして生成する。
同様に、情報処理装置100の取得部110は、情報記憶部190から、商品ID「G2」と対応付けられた積載個数「4個」の情報を取得する。その後、制御部130は、取得された情報でそれぞれ表される積載個数「4個」の注文商品G2の在庫の価格の内で、少なくとも2つが互いに相違するか否かを判別する。このとき、制御部130は、少なくとも2つが互いに相違すると判別すると、積載個数「4個」の注文商品G2の在庫の最低価格と、最高価格と、を表すメッセージ(以下、注文商品G2の価格メッセージという)を生成する。注文商品G2の価格メッセージは、積載個数「4個」の注文商品G2の在庫が、当該最低価格以上、かつ、当該最高価格以下の範囲に含まれることを知らせるメッセージであっても良い。これに対して、価格が全て同じであると判別すると、積載個数「4個」の注文商品G2の在庫の共通価格を表すメッセージを、注文商品G2の価格メッセージとして生成する。
その後、情報処理装置100の制御部130は、実施例1で説明した処理を実行することで配送予定通知を生成した後に、生成された配送予定通知に、注文商品G1の価格メッセージと、注文商品G2の価格メッセージと、を追加する。その後、制御部130は、ステップS19の処理を実行することで、配送予定通知を注文者の端末装置700を宛先としてデータ通信回路104aへ出力し、データ通信回路104aは、出力された配送予定通知を端末装置700へ送信する(ステップS19)。
その後、情報処理装置100は、ステップS20からS26の処理を実行することで、移動機600を配送先の位置D1へ移動させてから、注文個数「1個」の注文商品G1の在庫と、注文個数「2個」の注文商品G2の在庫と、注文個数「3個」の注文商品G3の在庫と、の受け渡しを告げる受渡報告を取得する(ステップS20からS26)。
その後、情報処理装置100は、ステップS27からS30の処理を実行することで、受け取られなかった余剰個数「1個」の注文商品G1の在庫と、余剰個数「2個」の注文商品G2の在庫と、を積載した移動機600を実店舗の位置Sへ移動させてから、格納ボックス621を解錠させる(ステップS27からS30)。その後、情報処理装置100の指示部120は、移動機600に積載されている余剰個数「1個」の注文商品G1の在庫に記載されているコードと、余剰個数「2個」の注文商品G2の在庫に記載されているコードと、をコードリーダーに読み取らせることを指示する。このために、指示部120は、そのような指示を表すメッセージをディスプレイパネル105bに表示させ、従業員は、指示に従って、これらのラベルをコードリーダーにかざす。移動機600のコードリーダーは、余剰個数「1個」の注文商品G1の在庫のラベルに記載されているコードを読み取り、読み取られたコードで表される注文商品G1の商品ID「G1」と、注文商品G1の在庫の価格を表す情報と、を情報処理装置100へ出力する。同様に、コードリーダーは、余剰個数「2個」の注文商品G2の在庫のラベルにそれぞれ記載されているコードを読み取り、読み取られた「2個」のコードでそれぞれ表される注文商品G2の商品ID「G2」と、注文商品G2の在庫の価格を表す情報と、を情報処理装置100へ出力する。
情報処理装置100のデータ通信回路104aが、商品ID「G1」と、余剰個数「1個」の注文商品G1の在庫の価格を表す情報と、を受信すると、取得部110は、これらの情報を取得する。また、取得部110は、商品ID「G1」と情報記憶部190が対応付けて記憶している積載個数「2個」の情報を取得する。次に、特定部140は、取得された積載個数「2個」の情報でそれぞれ表される価格から、取得された情報で表される余剰個数「1個」の注文商品G1の在庫の価格を除外することで、注文個数「1個」の注文商品G1の受取在庫の価格を特定する。
同様に、情報処理装置100のデータ通信回路104aが、商品ID「G2」と、余剰個数「2個」の注文商品G2の在庫の価格を表す情報と、を受信すると、取得部110は、これらの情報を取得する。次に、特定部140は、商品ID「G2」と対応付けて情報記憶部190が記憶している積載個数「4個」の情報と、取得された余剰個数「2個」の情報と、に基づいて、注文個数「2個」の注文商品G2の受取在庫の価格を特定する。
その後、情報処理装置100の取得部110は、商品ID「G3」と対応付けて情報記憶部190が記憶している積載個数「3個」の情報を取得し、特定部140は、取得された積載個数「3個」の情報でそれぞれ表される価格が、注文個数「3個」の注文商品G3の受取在庫のそれぞれの価格であると特定する。その後、特定部140は、特定された注文個数「1個」の注文商品G1の受取在庫の価格と、注文個数「2個」の注文商品G2の受取在庫の価格と、注文個数「3個」の注文商品G3の受取在庫の価格と、の総和を算出することで、受取在庫の合計価格を特定する(ステップS31)。
これらの構成によれば、情報処理装置100のデータ通信回路104aは、移動機600が積載個数「4個」の注文商品G2の在庫を積載する場合、積載個数「4個」の在庫の内で、少なくとも2つのの在庫の価格が互いに異なると、積載個数「4個」の在庫の最低価格を表す情報と、最高価格を表す情報と、を、注文者の端末装置700へ送信する。このため、端末装置700が、最低価格を表す情報と最高価格を表す情報とを受信して表示し、注文者が端末装置700の表示を確認すれば、注文者は、例えば、移動機600が到着してから移動機600の位置に移動し、積載個数「4個」の在庫のラベルに記載された価格を確認しなくとも、積載個数「4個」の在庫の価格帯を知ることができるので、情報処理装置100は、注文者の利便性を向上できる。
本変形例では、注文商品G1及びG2の受け渡し前に、コードリーダーによって読み取られたコードで表される価格と、注文商品G1及びG2の受け渡し後に、コードリーダーによって読み取られたコードで表される価格と、に基づいて、情報処理装置100の特定部140は、受取在庫の合計価格を特定すると説明したが、これに限定される訳では無い。情報処理装置100の特定部140は、注文商品G1及びG2の受け渡し前に、コードリーダーによって読み取られたコードで表される重量と、注文商品G1及びG2の受け渡し後に、コードリーダーによって読み取られたコードで表される重量と、注文商品G1の単位重量当たりの価格と、注文商品G2の単位重量当たりの価格と、に基づいて、注文商品G1及びG2の受取在庫の合計価格を特定しても良い。
本変形例では、移動機600がコードリーダーを備えると説明したが、これに限定される訳では無く、情報処理装置100がコードリーダーを備えても良い。
<実施例1の変形例15>
実施例1では、実店舗の従業員が、受取在庫の価格を判断すると説明したが、これに限定される訳では無い。本変形例では、図15に示した撮像装置CR1及びCR2で得られた撮像画像から注文商品G1及びG2の在庫のラベルに記載されたコードを検出し、検出されたコードに基づいて、情報処理装置100の特定部140が、注文商品G1及びG2の受取在庫の価格を特定する。
本変形例では、図11のステップS18で、情報処理装置100の取得部110は、注文商品G1の画像情報と、サブボックスID「SN1」と、を取得し、注文商品G2の画像情報と、サブボックスID「SN2」と、を取得する(ステップS18)。注文商品G1の画像情報は、移動機600の第1サブボックスSN1に格納された積載個数「2個」の注文商品G1の在庫を撮像することで得られた画像を表す情報であり、注文商品G2の画像情報は、移動機600の第1サブボックスSN2に格納された積載個数「4個」の注文商品G2の在庫を撮像することで得られた画像を表す情報である。
次に、情報処理装置100の特定部140は、取得された画像情報で表される注文商品G1の撮像画像に対して、例えば、パターンマッチングを行うことで、積載個数「2個」の注文商品G1の在庫のラベルに記載されたコードに対応する画像領域を特定し、特定された2つの画像領域からコードをそれぞれ検出する。その後、特定部140は、検出された2つのコードでそれぞれ表される価格が、積載個数「2個」の注文商品G1の在庫の価格と特定する。次に、制御部130は、特定された積載個数「2個」の注文商品G1の在庫の価格をそれぞれ表す情報を、注文商品G1の商品ID「G1」と対応付けて情報記憶部190に保存する。
同様に、情報処理装置100の特定部140は、取得された画像情報で表される注文商品G2の撮像画像から、積載個数「4個」の注文商品G2の在庫のラベルにそれぞれ記載されたコードを検出する。その後、特定部140は、検出された4つのコードでそれぞれ表される価格が、積載個数「4個」の注文商品G2の在庫それぞれの価格であると特定する。次に、制御部130は、特定された積載個数「4個」の注文商品G2の在庫の価格をそれぞれ表す情報を、注文商品G2の商品ID「G2」と対応付けて情報記憶部190に保存する。
次に、情報処理装置100は、実施例1の変形例14で説明したステップS19と同様の処理を実行することで、注文商品G1の価格メッセージと、注文商品G2の価格メッセージと、を含む配送予定通知を、注文者の端末装置700を宛先としてデータ通信回路104aへ出力する(ステップS19)。
その後、情報処理装置100は、ステップS20からS26の処理を実行することで、移動機600を配送先の位置D1へ移動させてから、注文個数「1個」の注文商品G1の在庫と、注文個数「2個」の注文商品G2の在庫と、注文個数「3個」の注文商品G3の在庫と、が受け渡されたことを告げる受渡報告を取得する(ステップS20からS26)。
その後、情報処理装置100は、ステップS27からS29の処理を実行することで、受け取られなかった余剰個数「1個」の注文商品G1の在庫と、余剰個数「2個」の注文商品G2の在庫と、を積載した移動機600を実店舗の位置Sへ移動させる(ステップS27からS29)。その後、情報処理装置100は、図11のステップS17及びS18と同様の処理を実行することで、撮像命令を移動機600へ送信してから、注文商品G1の画像情報と、注文商品G2の画像情報と、を取得する。その後、情報処理装置100は、解錠命令を出力する(ステップS30)。
次に、情報処理装置100の特定部140は、取得された画像情報で表される注文商品G1の撮像画像から、余剰個数「1個」の注文商品G1の在庫のコードを検出する。その後、取得部110は、商品ID「G1」と情報記憶部190が対応付けて記憶している積載個数「2個」の情報を取得する。次に、特定部140は、取得された積載個数「2個」の情報でそれぞれ表される価格から、取得されたコードで表される余剰個数「1個」の注文商品G1の在庫の価格を除外することで、注文個数「1個」の注文商品G1の受取在庫の価格を特定する。
同様に、情報処理装置100の特定部140は、取得された画像情報で表される注文商品G2の撮像画像から、余剰個数「2個」の注文商品G2の在庫のコードを検出する。その後、取得部110は、商品ID「G2」と情報記憶部190が対応付けて記憶している積載個数「4個」の情報を取得する。次に、特定部140は、取得された積載個数「4個」の情報でそれぞれ表される価格から、取得されたコードで表される余剰個数「2個」の注文商品G2の在庫の価格を除外することで、注文個数「2個」の注文商品G2の受取在庫の価格を特定する。
次に、情報処理装置100の取得部110は、図6の商品テーブルから、注文商品G3の商品ID「G1」に対応付けられた価格「300円」を表す情報を取得し、特定部140は、取得された情報で表される価格「300円」が、注文個数「3個」の注文商品G3の受取在庫それぞれの価格であると特定する。その後、特定部140は、特定された注文個数「1個」の注文商品G1の受取在庫の価格と、注文個数「2個」の注文商品G2の受取在庫の価格と、注文個数「3個」の注文商品G3の受取在庫の価格と、の総和を算出することで、受取在庫の合計価格を特定する(ステップS31)。
本変形例では、注文商品G1の受け渡し前に受信された画像情報で表される注文商品G1の撮像画像から検出されるコード(以下、第1コードという)と、注文商品G1の受け渡し後に受信された画像情報で表される注文商品G1の撮像画像から検出されるコード(以下、第2コードという)と、に基づいて、情報処理装置100の特定部140は、受け渡された注文個数「1個」の注文商品G1の在庫の価格を特定すると説明した。しかし、これに限定される訳では無く、第1コードと第2コードとが注文商品G1の在庫の重量を表す場合、特定部140は、第1コードと第2コードとに基づいて、受け渡された注文個数「1個」の注文商品G1の在庫の重量を特定し、特定された重量と、注文商品G1の単位重量当たりの価格と、に基づいて、受け渡された当該在庫の価格を特定しても良い。同様に、特定部140は、注文商品G2の受け渡し前に受信された画像情報で表される注文商品G2の撮像画像から検出される第1コードと、注文商品G2の受け渡し後に受信された画像情報で表される注文商品G2の撮像画像から検出される第2コードと、に基づいて、受け渡された注文個数「2個」の注文商品G2の在庫の重量を特定しても良い。また、特定部140は、受け渡された注文個数「2個」の注文商品G2の在庫の重量と、注文商品G2の単位重量当たりの価格と、に基づいて、受け渡された注文個数「2個」の注文商品G2の在庫の合計価格を特定しても良い。
<実施例1の変形例16>
実施例1では、受取人が、予め定められた受渡時間を経過するよりも前に、配送先の位置D1に現れる場合を具体例として挙げて説明を行った。これに対して、本変形例では、受取人が、受渡時間を経過しても配送先の位置D1に現れない場合を具体例として挙げて説明を行う。
図12のステップS23において、情報処理装置100は、受取要求を出力してから受渡時間が経過したと判別すると(ステップS23;Yes)、ステップS28と同様の処理を実行することで、実店舗の位置Sまで帰還することを命じる帰還命令を移動機600へ送信する(ステップS34)。次に、情報処理装置100は、ステップS29及びS30と同様の処理を実行することで、実店舗の位置Sに到着した移動機600の格納ボックス621を解錠させてから(ステップS35及びS36)、ステップS33から上記処理を繰り返す。
<実施例1の変形例17>
実施例1では、情報処理システム1は、無人地上車両である移動機600を備えると説明したが、これに限定される訳では無い。本変形例に係る情報処理システム1は、図20に示すような、例えば、ドローン等の無人航空機である移動機500を備える。
本変形例に係る移動機500は、移動機500の姿勢及び飛行を制御する情報処理装置590と、情報処理装置590の前面から右前方及び左前方、並びに、情報処理装置590の後面から左後方及び右後方にそれぞれ突出したプロペラアーム501及び502、並びに、503及び504と、を備える。また、移動機500は、プロペラアーム501から504の先端にそれぞれ設置されたプロペラ511から514、及び、情報処理装置590の制御に従ってプロペラ511から514を回転させる不図示のモータを備える。
さらに、移動機500の情報処理装置590の下面には、商品を格納する格納ボックス521を備える格納庫520が設置されている。移動機500が備える格納庫520の構成及び機能は、移動機600が備える格納庫620の構成及び機能と同様である。
また、移動機500は、情報処理装置590の前面に設けられたLiDARセンサ541と、情報処理装置590の後面に設けられた不図示のLiDARセンサと、を備える。移動機500が備える前面のLiDARセンサ541と後面のLiDARセンサとの構成及び機能は、それぞれ移動機600が備える前面のLiDARセンサ641と後面のLiDARセンサとの構成及び機能と同様である。
移動機500の情報処理装置590が備えるハードウェアの構成及び機能は、移動機600の情報処理装置690が備えるハードウェアの構成及び機能と同様である。
移動機500の不図示の駆動回路は、プロペラ511から514を回転させる不図示のモータにそれぞれ接続された不図示のケーブルに接続されている。不図示の駆動回路は、CPUが出力する信号に従って、プロペラ511から514を回転させる不図示のモータを駆動させる。
移動機500の不図示のCPUは、図17に示した移動処理と同様の処理を実行する。これにより、移動機500のCPUは、移動機500を離陸させるための制御信号を生成し、生成された制御信号を駆動回路へ出力する。次に、移動機500のCPUは、未到着のノードの内で、最も到着順が早いノードへ向かって飛行するための制御信号を駆動回路へ出力する。その後、移動機500のCPUは、経路の終点に到着したと判別すると、移動機500を着陸させるための制御信号を駆動回路へ出力する。
本変形例では、移動機500は、無人航空機であると説明したが、これに限定される訳ではなく、無人飛翔体であっても良い。さらに、本変形例では、移動機500は、プロペラ511から514で揚力及び推力を得るドローンであると説明したが、これに限定される訳ではない。移動機500は、翼を備え、翼で揚力を得えても良いし、空気よりも比重の小さい気体で満たされた気嚢を備え、気嚢で揚力を得えても良い。また、移動機500は、ジェットエンジン又はロケットエンジンを備え、ジェットエンジン又はロケットエンジンで推力を得ても良い。
<実施例1の変形例18>
実施例1の変形例17では、移動機500は、格納ボックス521に商品を格納することで、商品を積載すると説明したが、これに限定される訳では無い。本変形例に係る移動機500は、実施例1の変形例17で説明した格納庫520に代えて、図21に示すようなフック550を3個備えている。
3個のフック550には、予め定められた規則、又は、ランダム変数に基づいて、1番から3番までの番号が予め付されている。本変形例では、1番目のフック550は、積載個数「2個」の注文商品G1の在庫を吊持するために用いられ、2番目のフック550は、積載個数「4個」の注文商品G2の在庫を吊持するために用いられ、かつ、3番目のフック550は、積載個数「3個」の注文商品G3の在庫を吊持するために用いられる。
フック550は、例えば、シャックルであり、例えば、U字金具である本体部551を備える。本体部551は、互いに対向した端部551a及び551bと、端部551a及び551bと対向する側の湾曲又は屈曲しているクラウン部551cと、を有する。本体部551のクラウン部551cは、端部551a及び551bよりも上側に位置するように、例えば、固定金具によって、移動機500の情報処理装置590の下面に固定されている。
本体部551の端部551aには、例えば、棒状金具であるピン552が挿通される不図示の貫通孔が形成されており、端部551bの表面であって、当該貫通孔と対向する面には、ピン552の先端を底部で受け止める不図示の受止穴が形成されている。
このため、本体部551の貫通孔に挿通されたピン552の先端が、本体部551の受止穴で受け止められている状態(以下、施錠状態という)では、フック550の本体部551とピン552とは、環形状を形成する。このとき、例えば、環状金具であるリングGに、ピン552が挿通されており、リングGが、例えば、紐Lで、梱包材Aによって梱包された1又は複数の商品に連結されていれば、フック550は、リングGに連結された1又は複数の商品を吊持できる。
ピン552が有する2つの端部の内で、本体部551によって受け止められる側と反対側の端部は、例えば、板状金具又は棒状金具である連結部材553と連結されている。連結部材553は、ピン552との連結点553aと反対側の端部で、モータ555が有するシャフト555aに固定された揺動部材554と連結されている。連結部材553は、ピン552との連結点553aを中心として揺動可能に連結されており、かつ、揺動部材554との連結点553bを中心として揺動可能に連結されている。
揺動部材554は、例えば、板状金具又は棒状金具であり、連結部材553との連結点553bと異なる固定点で、モータ555のシャフト555aに固定されている。モータ555は、例えば、ステッピングモータであり、不図示のケーブルを介して、情報処理装置590の駆動回路に接続されている。モータ555は、駆動回路から出力される信号に従って、予め定められた角度だけ、予め定められた方向(以下、解錠方向という)へシャフト555aを回転させる。これにより、揺動部材554がシャフト555aとの固定点を中心として、予め定められた方向へ揺動させられると、図22に示すように、連結部材553との連結点553bが、ピン552の抜出方向に移動させられる。これにより、連結部材553に連結されているピン552が、抜出方向に移動させられるので、ピン552の先端が、本体部551の端部551bに形成されている受止穴から引き離されて、端部551aに近づけられる。
本変形例では、ピン552は、抜出方向に、本体部551の端部551aと端部551bとの距離DBに等しい距離だけ移動させられるため、ピン552は、端部551aに形成されている貫通孔から、受止穴の深さDHと等しい距離だけ、先端が突出する位置まで、抜出方向に移動させられる。本変形例では、受止穴の深さDHは、梱包材Aに連結されているリングGの抜出方向の幅TRよりも十分に小さく設計されている。このため、ピン552が抜出方向に距離DBだけ移動させられると、リングGからピン552が抜出される。
このように、ピン552の先端が本体部551の受止穴から離された状態(以下、解錠状態という)では、フック550の本体部551とピン552とは、環形状を形成しない。さらに、本体部551のクラウン部551cは、端部551a及び551bがクラウン部551cよりも下側に位置するように、移動機500の情報処理装置590の下面に固定されている。これらのため、フック550が施錠状態から解錠状態となり、リングGからピン552が抜出されると、リングGは、U字形状の本体部551の開口から、商品と共に自由落下する。
尚、モータ555は、情報処理装置590から出力される信号で表される角度だけ、解錠方向と逆方向の施錠方向へシャフト555aを回転させることで、フック550の状態を解錠状態から施錠状態に変更させる。
本変形例に係る情報処理装置100の制御部130は、図11のステップS16において、移動機500を宛先として、施錠命令をデータ通信回路104aへ出力する。移動機500のデータ通信回路が施錠命令を受信すると、移動機500のCPUは、施錠命令に従って、1番目から3番目のフック550の状態を解錠状態から施錠状態に変更させる制御信号を移動機500の駆動回路へ出力する。駆動回路は、出力された制御信号に従って、シャフト555aを施錠方向に回転させる信号を、1番目から3番目のフック550のモータ555へ出力する。このようにして、1番目から3番目のフック550の状態が施錠状態に変更される。
このとき、1番目のフック550のピン552が、積載個数「2個」の注文商品G1の在庫を梱包した梱包材Aに連結されているリングGに挿通されることで、積載個数「2個」の注文商品G1の在庫が移動機500に積載される。同様にして、積載個数「4個」の注文商品G2の在庫、及び、積載個数「3個」の注文商品G3の在庫が移動機500に積載される。
また、本変形例に係る情報処理装置100は、注文商品G1からG3の在庫を積載した移動機600が配送先の位置D1へ到着すると、図12のステップS25において、移動機600へ解錠命令を送信する。次に、移動機500のデータ通信回路が解錠命令を受信すると、移動機500のCPUは、受信された解錠命令に従って、1番目から3番目のフック550を解錠させる制御信号を移動機500の駆動回路へ出力する。その後、駆動回路は、制御信号に従って、シャフト555aを解錠方向に回転させる信号を、1番目から3番目のフック550のモータ555へ出力する。
このようにして、1番目から3番目のフック550の状態が解錠状態に変更される。このとき、1番目のフック550のピン552が、積載個数「2個」の注文商品G1の在庫を梱包する梱包材Aに連結されたリングGから抜出されることで、リングGと共に「2個」の注文商品G1の在庫が、移動機500から解放されて地面へ落下する。同様に、積載個数「2個」の注文商品G2の在庫、及び、積載個数「3個」の注文商品G3の在庫が移動機500から解放される。
その後、受取人は、1番目のフック550から解放された梱包材(以下、1番目の梱包材という)Aから積載個数「2個」の注文商品G1の在庫を取り出し、取り出された「2個」の在庫から、注文個数「1個」の在庫を選択して受け取る。次に、受取人は、選択されず受け取られなかった余剰個数「1個」の在庫を1番目の梱包材Aの内部に戻す。また、受取人は、2番目のフック550から解放された梱包材Aから積載個数「4個」の注文商品G2の在庫を取り出し、注文個数「2個」の在庫を選択し、選択されなかった余剰個数「2個」の在庫を2番目の梱包材Aに戻す。さらに、受取人は、3番目のフック550から解放された梱包材Aから注文個数「3個」の注文商品G3の在庫を受け取る。
その後、情報処理装置100は、ステップS27において、移動機500へ施錠命令を送信し、移動機500は、施錠命令を受信すると、施錠命令に従って1番目から3番目のフック550の状態を解錠状態から施錠状態に変更させる。このとき、1番目のフック550のピン552が、1番目の梱包材Aに連結されたリングGに挿通されることで、余剰個数「1個」の注文商品G1の在庫が移動機500に積載される。同様にして、余剰個数「2個」の注文商品G2の在庫が移動機500に積載される。その後、情報処理装置100は、移動機600が実店舗の位置Sへ帰還すると、ステップS30において、移動機600へ解錠命令を送信する。
本変形例では、フック550は、シャックルであると説明したが、これに限定される訳では無い。フック550は、リングGを掛止可能なものであれば、どのようなものであっても良く、例えば、カラビナ、又は、アイフックであっても良い。また、フック550の本体部551の形状は、U字形状に限定される訳では無く、例えば、V字、C字、S字、又は、J字形状であっても良い。さらに、フック550の本体部551、ピン552、連結部材553、及び、揺動部材554は、金具に限定される訳では無く、例えば、繊維強化プラスティック又は木材であっても良い。
また、本変形例では、ピン552は、抜出方向及び挿通方向に、本体部551の端部551aと端部551bとの距離DBに等しい距離だけ移動させられると説明したが、これに限定される訳では無く、距離DBよりも短い又は長い距離だけ抜出方向及び挿通方向に移動させられても良く、好適なピン552の移動距離は、当業者が実験又は設計により定めることができる。
さらに、本変形例では、梱包材Aは、段ボールであるが、これに限定される訳では無く、商品を梱包できる物であれば、どのようなものであっても良く、ビニール袋又は布袋であっても良い。また、本変形例では、リングGは、環状金具であるため、リングGの形状は、円形環形状、楕円形環形状、又は、多角形環形状を含む。また、リングGの形状は、これらに限定される訳では無く、例えば、C字又はS字形状であっても良い。さらに、リングGは、金具に限定される訳では無く、例えば、繊維強化プラスティック又は木材であっても良い。
さらに、本変形例では、梱包材Aで梱包された1又は複数の商品は、例えば、紐LでリングGに連結されており、フック550のピン552がリングGに挿通されることで、1又は複数の商品は、移動機500に吊持されると説明した。しかし、これに限定される訳ではなく、梱包材Aで梱包された1又は複数の商品は、紐Lで縛られているが、紐Lは、リングGに連結されておらず、フック550のピン552が紐Lで形成された環に挿通されることで、1又は複数の商品は、移動機500に吊持されても良い。
本変形例では、移動機500が3個のフック550を備えると説明したが、これに限定される訳では無く、移動機500は、1個、2個、又は、4個以上のフック550を備えても良い。また、本変形例では、移動機500が3個のフック550を備えると説明したが、これに限定される訳では無く、実施例1で説明した移動機600が3個のフック550を備えても良いし、移動機600が1個、2個、又は、4個以上のフック550を備えても良い。
本変形例と、情報処理装置100が、注文商品G1の在庫の積載個数を、移動機600の格納ボックス621の空き状況に応じて積載個数を設定する実施例1の変形例11と、は組み合わせることができる。この場合、情報処理装置100の情報記憶部190は、商品を識別する商品IDと、梱包材Aに積載可能な当該商品の在庫の数の最大値Cmaxを表す情報と、を対応付けて記憶していても良い。取得部110は、図13のステップS46において、注文商品G1の商品ID「G1」と対応付けられた最大値Cmaxを表す情報を取得し、指示部120は、取得された情報で表される最大値Cmaxと、注文商品G1の注文個数「1個」と、に基づいて、梱包材Aに注文個数「1個」の注文商品G1の在庫を積載させた場合に、梱包材Aに積載可能な注文商品G1の在庫の数を算出しても良い。また、指示部120は、注文商品G1の余剰個数を、「1個」以上、かつ、算出された数以下の個数に設定しても良い。
<実施例1の変形例19>
実施例1では、在庫の重量が均一性を有する商品G1及びG2と、在庫の重量が均一性を有さない商品G3とが注文される場合を具体例として挙げて説明したが、これに限定される訳ではない。在庫の重量が均一性を有さない商品のみが注文される場合、情報処理装置100の指示部120は、在庫の重量が均一性を有さない注文された商品のみを、注文個数よりも多い積載個数、移動機に積載させる指示を行っても良い。
<実施例1の変形例20>
実施例1では、情報処理システム1は、情報処理装置100と、移動機600と、端末装置700と、を備えると説明したが、これに限定される訳では無い。情報処理システム1は、図3に示した注文受付処理を実行する情報処理装置100と、図11及び図12に示した移動制御処理、並びに、図13に示した積載個数設定処理を実行する不図示の制御装置と、移動機600と、端末装置700と、を備えても良い。
<実施例1の変形例21>
実施例1では、商品G1は、「肩ロース牛肉」であり、商品G2は、「サーロイン牛肉」であると説明したが、これに限定される訳ではない。商品G1及びG2は、どのような商品であっても良く、例えば、豚肉、羊肉、魚、野菜、及び、果物を含む生鮮食料品であっても良い。
実施例1では、商品が商取引の対象とされると説明したが、これに限定される訳ではない。商品は、どのような物であっても良く、例えば、商取引の対象とされない物であっても良い。また、商品は、物でなく、生き物であっても良い。
<実施例1の変形例22>
実施例1では、移動機600は、無人地上車両であると説明した。また、実施例1の変形例17では、移動機500は、無人航空機であると説明した。しかし、移動機500及び600は、必ずしも無人である必要はなく、情報処理装置100による制御を除き、自律して移動する物体であれば、人が乗っていても良い。
<実施例1の変形例23>
実施例1では、情報処理装置100は、情報記憶部190を備えると説明したが、これに限定される訳ではない。本変形例に係る情報処理装置100は、情報記憶部190を備えない。本変形例に係る情報処理装置100は、例えば、NAS(Network Attached Storage)であり、かつ、情報記憶部190の機能と同様の機能を有する不図示の情報記憶装置とインタネットINを介して接続されており、情報記憶装置が記憶する情報を用いて、図3に示した注文受付処理、図11及び図12に示した移動制御処理、及び、図13に示した積載個数設定処理を実行する。本変形例に係る情報処理システム1は、情報記憶装置を備えても良いし、情報記憶装置を備えなくても良い。
<実施例1の変形例24>
実施例1では、情報処理システム1は、情報処理装置100を備えると説明した。また、実施例1では、情報処理装置100のCPU101は、図3に示した注文受付処理、図11及び図12に示した移動制御処理、及び、図13に示した積載個数設定処理を実行すると説明した。また、情報処理装置100のCPU101は、図4に示した取得部110、指示部120、制御部130、及び、特定部140として機能すると説明した。また、情報処理装置100のハードディスク103bは、情報記憶部190として機能すると説明した。
しかし、これらに限定される訳ではなく、情報処理システム1は、情報処理装置100を備えなくとも良い。この場合、図3に示した注文受付処理、図11及び図12に示した移動制御処理、及び、図13に示した積載個数設定処理は、移動機600が備える情報処理装置690のCPU691によって実行されても良い。このため、移動機600のCPU691が、情報処理装置100の取得部110、指示部120、制御部130、及び、特定部140に相当する不図示の機能部として機能しても良い。また、移動機600のフラッシュメモリ693bが、情報処理装置100の情報記憶部190に相当する不図示の機能部として機能しても良い。
また、これに限定される訳ではなく、図3に示した注文受付処理、図11及び図12に示した移動制御処理、及び、図13に示した積載個数設定処理の少なくとも1つは、情報処理装置100のCPU101と、移動機600のCPU691と、端末装置700が備える不図示のCPUと、の2つ以上によって分散実行されても良い。
<実施例2>
実施例1では、移動機600は、1つの格納ボックス621を備え、受取人は、格納ボックス621に格納された積載個数「4個」の注文商品G2の在庫を目視等し、目視等の結果に基づいて注文個数「2個」の注文商品の在庫を選択して受け取ると説明した。しかし、これに限定される訳では無い。本実施例では、移動機600は、不図示の複数の格納ボックスを備え、受取人は、複数の格納ボックスにそれぞれ設置されている計測装置で計測された注文商品G2の在庫の重量、及び、撮像装置で得られた当該在庫の撮像画像に基づいて、受け取る注文個数「2個」の在庫を選択する。また、本実施例では、受取人は、選択された注文個数「2個」の在庫をそれぞれ格納している格納ボックスから在庫を受け取る。以下、実施例1と同様の構成については、実施例1で用いた符号と同一の符号を用いて説明するが、本実施例と実施例1との相違について主に説明する。
本実施例に係る移動機600は、不図示の5個の格納ボックス621から625を備えている。本実施例に係る格納ボックス621は、図23に示すような底板PM、天板PT、背板PK、並びに、側板PS1及びPS2を備え、これらの板により閉塞されて前方が開放された空間を形成している箱体を備える。本実施例に係る側板PS1及びPS2は、実施例1と同様に、互いに平行となり、かつ、背板PKと垂直となるように、背板PKに固定されている。また、底板PM及び天板PTは、側板PS1及びPS2、並びに、背板PKと垂直となるように、側板PS1及びPS2、並びに、背板PKに固定されている。これに対して、本実施例に係る格納ボックス621の箱体は、実施例1において図15を参照して説明した棚板PF及び間仕切板PPを備えないため、棚板PF及び間仕切板PP等により閉塞された空間を形成する第1サブボックスSN1及びSN2、並びに、第2サブボックスSUを備えない。
格納ボックス621の天板PTの下側の面には、実施例1で説明した撮像装置CR1の構成及び機能と同様の構成及び機能を備える撮像装置CRが設置されている。撮像装置CRの設置位置、光軸、及び、画角は、格納ボックス621の内部が撮像範囲に含まれるように調整されている。すなわち、撮像装置CRの設置位置、光軸、及び、画角は、格納ボックス621を構成する底板PMの上側の面が撮像範囲に含まれるように調整されている。このため、格納ボックス621に1又は複数の商品が格納されると、撮像装置CRの撮像範囲には、格納ボックス621に格納された当該1又は複数の商品が含まれる。
格納ボックス621の底板PMの上面には、実施例1で説明した計測装置CW1の構成及び機能と同様の構成及び機能を備え、格納ボックス621に格納される1又は複数の商品の合計重量を計測する不図示の計測装置CWが設置されている。格納ボックス622から625の構成及び機能は、格納ボックス621の構成及び機能と同様である。
情報処理装置100のCPU101は、起動すると、図24及び図25に示すような移動制御処理を実行する。情報処理装置100の情報記憶部190は、移動機600が備える格納ボックス621から625に関する情報が移動制御処理の実行により保存される、図26に示すようなボックステーブルを予め記憶している。ボックステーブルには、5個のレコードが予め保存されており、1番目のレコードには、格納ボックス621を識別するボックスID「B1」と、格納ボックス621に格納される商品が決定されていないことを表す文字列「NULL」と、が対応付けられて予め保存されている。同様に、2番目から5番目のレコードには、格納ボックス622から625のボックスID「B2」から「B5」と、文字列「NULL」と、が予め対応付けられて保存されている。
移動制御処理の実行中において、1番目のレコードには、格納ボックス621のボックスID「B1」と対応付けられて、格納ボックス621に格納される在庫の商品ID、価格を表す情報、及び、選択フラグが保存される。在庫の選択フラグは、受け取る在庫として、当該在庫が受取人によって選択されたか否かを表すフラグである。同様に、2番目から5番目のレコードには、格納ボックス622から625のボックスID「B2」から「B5」とそれぞれ対応付けられて、格納ボックス622から625にそれぞれ格納される在庫の商品ID、価格を表す情報、及び、選択フラグが保存される。
情報処理装置100は、移動制御処理の実行を開始すると、図11のステップS11及びS12と同様の処理を実行することで、未実行の配送予定に注目する(ステップS81及びS82)。本実施例では、説明を簡単にするため、実施例1で注目された配送予定と異なる配送予定が注目される場合を具体例として挙げて以下の説明を行う。本実施例では、注文個数「2個」の注文商品G2の在庫と、注文個数「3個」の注文商品G3の在庫と、を、端末装置700を使用する注文者に指定された配送先の位置D1まで配送する配送予定について注目された場合を具体例として挙げる。
このため、情報処理装置100は、図11のステップS13と同様の処理を実行することで、注文商品が商品G2と商品G3であることを特定する(ステップS83)。次に、情報処理装置100は、注文商品G2及びG3の在庫の積載個数を設定するため、図13に示した積載個数設定処理を実行する(ステップS84)。本実施例では、実施例1と同様に、注文商品G2の在庫の積載個数が、注文個数「2個」よりも多い「4個」に設定され、かつ、注文商品G3の在庫の積載個数が、注文個数「3個」と同じ数に設定される場合を具体例として挙げて以下の説明を行う。しかし、本実施例では、実施例1で挙げた、注文商品G2の在庫の重量が均一性を有さない場合と異なる場合を具体例として挙げて以下の説明を行う。本実施例では、注文商品G2の在庫の重量及び質が均一性を有さず、かつ、注文商品G3の在庫の重量及び質が均一性を有する場合を具体例として挙げる。
本実施例では、商品G2の在庫の重量が均一性を有さないとは、実施例1の変形例2で説明した通り、商品G2の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G2の2つの在庫を無作為に抽出すると、抽出された2つの在庫の重量を表す物理量が、商品G2に応じて予め定められる物理量以上異なる確率が、予め定められる閾値よりも高いことを意味する。また、本実施例では、商品G3の在庫の重量が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G3の2つの在庫を無作為に抽出すると、抽出された2つの在庫の重量を表す物理量が、商品G3に応じて予め定められる物理量以上異なる確率が、予め定められる閾値以下であることを意味する。
さらに、本実施例では、商品G2の在庫の質が均一性を有さないとは、実施例1の変形例7で説明した通り、商品G2の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G2の2つの在庫を無作為に抽出すると、抽出された2つの在庫の質を表す物理量が、商品G2に応じて予め定められる物理量以上異なる確率が予め定められる閾値よりも高いことを意味する。また、商品G3の在庫の質が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G3の2つの在庫を無作為に抽出すると、抽出された2つの在庫の質を表す物理量が、商品G3に応じて予め定められる物理量以上異なる確率が予め定められる閾値以下であることを意味する。
その後、情報処理装置100の取得部110は、図6の商品テーブルから、注文商品G2の商品ID「G2」と対応付けられた均一性フラグを取得する。次に、指示部120は、取得された均一性フラグの値が「false」であるため、注文商品G2の在庫の重量及び質が均一性を有さないと判別し、積載個数「4個」の注文商品G2の在庫を、格納ボックス621から625の内で、それぞれ異なる格納ボックスに格納することを決定する。その後、指示部120は、予め定められた規則、又は、ソフトウェア乱数に基づいて、積載個数「4個」の注文商品G2の在庫を、格納ボックス621から625の内で、積載個数「4個」の格納ボックスにそれぞれ1個ずつ格納することを決定する。このように決定されるのは、受取人に選択された注文個数「2個」の在庫をそれぞれ格納する格納ボックスを解錠し、かつ、選択されなかった余剰個数「2個」の在庫をそれぞれ格納する格納ボックスの施錠を維持すれば、選択された在庫の受け渡しにおいて、選択されなかった在庫の汚損又は破損を防止できるためである。本実施例では、積載個数「4個」の注文商品G2の在庫を、格納ボックス621から624にそれぞれ1個ずつ格納することが決定された場合を具体例として挙げて以下の説明を行う。
同様に、情報処理装置100の取得部110は、商品テーブルから、注文商品G3の商品ID「G3」と対応付けられた均一性フラグを取得する。次に、指示部120は、取得された均一性フラグの値が「true」であるため、注文商品G3の在庫の重量及び質が均一性を有すると判別し、積載個数「3個」の注文商品G3の在庫を、同じ格納ボックスに格納することを決定する。このように決定されるのは、積載個数「3個」の注文商品G3の在庫の全てが受取人によって受け取られるためである。その後、指示部120は、移動機600が備える格納ボックス621から625の内で、格納させる在庫が決まっていない格納ボックス625に、積載個数「3個」の注文商品G3の在庫を格納することを決定する。
その後、情報処理装置100は、図11のステップS15と同様の処理を実行することで、注文商品G2及びG3の在庫の探出、運搬、及び、積載を指示する(ステップS85)。このために、指示部120は、注文商品G2の商品ID「G2」又は名称「サーロイン牛肉」を表す情報と、積載個数「4個」を表す情報と、格納ボックス621から624を識別するボックスID「B1」から「B4」と、を含む、商品G2の積載に関するメッセージを生成する。商品G2の積載に関するメッセージは、積載個数「4個」の注文商品G2の在庫を実店舗から探し出すこと、探し出された「4個」の在庫を移動機600の位置まで運搬すること、及び、運搬された「4個」の在庫を移動機600の格納ボックス621から624に1個ずつ積載することを指示するメッセージである。
さらに、情報処理装置100の指示部120は、注文商品G3の商品ID「G3」又は名称「塩」を表す情報と、積載個数「3個」を表す情報と、格納ボックス625のボックスID「B5」と、を含む、商品G3の積載に関するメッセージを生成する。商品G3の積載に関するメッセージは、積載個数「3個」の注文商品G3の在庫を実店舗から探し出すこと、探し出された「3個」の在庫を移動機600の位置まで運搬すること、及び、運搬された「3個」の在庫を移動機600の格納ボックス625に積載すること、を指示するメッセージである。
次に、情報処理装置100の指示部120は、商品G2の積載に関するメッセージ、及び、商品G3の積載に関するメッセージをディスプレイパネル105bに表示させる。表示されたこれらのメッセージを視認した従業員は、積載個数「4個」の注文商品G2の在庫と、積載個数「3個」の注文商品G3の在庫と、を実店舗から探し出し、移動機600まで運搬する。次に、従業員は、積載個数「4個」の注文商品G2の在庫を1個ずつ、移動機600の格納ボックス621から624にそれぞれ積載させ、積載個数「3個」の注文商品G3の在庫を全て、格納ボックス625に積載させる。その後、従業員は、積載が終了したことを表す信号を出力させる操作を情報処理装置100の入力装置105cに行う。
情報処理装置100の入力装置105cが当該操作に応じた信号を出力すると、情報処理装置100のCPU101は、重量送信命令と画像送信命令とを、移動機600を宛先としてデータ通信回路104aに出力する(ステップS86)。移動機600のデータ通信回路694aが重量送信命令を受信すると、CPU691は、格納ボックス621の計測装置CWから出力される信号に基づいて、格納ボックス621に格納された注文商品G2の在庫の重量を表す重量情報(以下、格納ボックス621の重量情報という)を取得する。その後、CPU691は、格納ボックス621のボックスID「B1」と、格納ボックス621の重量情報と、を、情報処理装置100を宛先としてデータ通信回路694aへ出力し、データ通信回路694aは、これらの情報を情報処理装置100へ送信する。同様に、移動機600は、格納ボックス622から625の計測装置からそれぞれ出力される信号に基づいて重量情報を取得し、格納ボックス622から625のボックスID「B2」から「B5」と、取得された重量情報と、を情報処理装置100へ送信する。
また、移動機600のデータ通信回路694aが画像送信命令を受信すると、CPU691は、格納ボックス621の撮像装置CRから出力される信号に基づいて、格納ボックス621に格納された注文商品G2の在庫を撮像することで得られた撮像画像を表す画像情報(以下、格納ボックス621の画像情報という)を取得する。その後、CPU691は、格納ボックス621のボックスID「B1」と、格納ボックス621の画像情報と、を、情報処理装置100を宛先としてデータ通信回路694aへ出力し、データ通信回路694aは、これらの情報を情報処理装置100へ送信する。同様に、移動機600は、格納ボックス622から625の撮像装置からそれぞれ出力される信号に基づいて画像情報を取得し、格納ボックス622から625のボックスID「B2」から「B5」と、取得された画像情報と、を情報処理装置100へ送信する。
その後に、情報処理装置100のデータ通信回路104aが、格納ボックス621のボックスID「B1」と、格納ボックス621の重量情報と、格納ボックス621の画像情報と、を受信すると、取得部110は、これらの情報を取得する。同様に、情報処理装置100のデータ通信回路104aが、格納ボックス622から625のボックスID「B2」から「B5」と重量情報と画像情報とを受信すると、取得部110は、これらの情報を取得する(ステップS87)。
次に、情報処理装置100の特定部140は、格納ボックス621の画像情報で表される撮像画像(以下、格納ボックス621の撮像画像という)に基づいて、格納ボックス621に格納された注文商品G2の在庫の質を特定する。このために、取得部110は、注文商品G2の商品ID「G2」に対応付けて情報記憶部190が予め記憶しているテンプレート画像を表す情報を取得する。次に、特定部140は、取得された情報で表されるテンプレート画像と、格納ボックス621の撮像画像と、を用いてテンプレートマッチングを行うことで、注文商品G2の在庫に対応する画像領域を特定する。その後、取得部110は、撮像装置CRの設置されている天板PTの下側の面から底板PMの上側の面までの距離と、撮像装置CRが備える撮像素子の大きさを表す情報と、撮像装置CRの焦点距離を表す情報と、を情報記憶部190から取得する。
本実施例では、在庫の質は、当該在庫の大きさを含む。このため、特定部140は、特定された画像領域の大きさと、取得された情報で表される天板PTの下側の面から底板PMの上側の面までの距離と、撮像素子の大きさと、焦点距離と、に基づいて、格納ボックス621に格納された注文商品G2の在庫の大きさを特定する。同様に、特定部140は、格納ボックス622から624の撮像画像に基づいて、これらの在庫の大きさを特定する。格納ボックス622から624の撮像画像とは、格納ボックス622から624にそれぞれ格納された注文商品G2の在庫を撮像することで得られた画像であり、かつ、格納ボックス622から624のボックスID「B1」から「B4」と共に取得された画像情報で表される撮像画像である。
次に、情報処理装置100の特定部140は、格納ボックス621から624の重量情報でそれぞれ表される重量と、格納ボックス621から624の撮像画像に基づいてそれぞれ特定された在庫の質と、に基づいて、格納ボックス621から624のそれぞれに格納された在庫の内で、重量及び質の組み合わせが互いに同じ複数の在庫を特定することを試行する。格納ボックス621から624の重量情報とは、格納ボックス621から624にそれぞれ格納された在庫の計測された重量を表す情報であり、かつ、格納ボックス621から624のボックスID「B1」から「B4」と共に取得された重量情報である。また、格納ボックス621から624の撮像画像とは、格納ボックス621から624にそれぞれ格納された在庫を撮像することで得られた画像であり、かつ、格納ボックス621から624のボックスID「B1」から「B4」と共に取得された画像情報で表される撮像画像である。
このとき、情報処理装置100の指示部120は、重量及び質の組み合わせが互いに同じ複数の在庫が特定されたか否かを判別する(ステップS88)。このとき、指示部120は、複数の注文商品G2の在庫が特定されたと判別すると(ステップS88;Yes)、特定された複数の在庫の数を計数する。次に、指示部120は、特定された複数の在庫の少なくとも1つを、実店舗に存在する注文商品G2の在庫であり、かつ、移動機600に格納されている在庫と異なる在庫(以下、注文商品G2の別の在庫という)と入れ替えることを指示する(ステップS89)。このために、指示部120は、特定された複数の在庫の商品ID「G2」と、当該複数の在庫をそれぞれ格納する格納ボックスのボックスIDと、を含み、かつ、当該複数のボックスの少なくとも1つに格納されている在庫を、注文商品G2の別の在庫と入れ替えるように指示するメッセージをディスプレイパネル105bに表示させる。注文商品G2の別の在庫は、例えば、実店舗の売り場の棚、又は、バックヤードの棚に保管されている。
表示されたメッセージを視認した従業員は、注文商品G2の在庫の入れ替えを行ってから、入れ替えが終了したことを表す信号を出力させる操作を情報処理装置100の入力装置105cに行う。情報処理装置100の入力装置105cが当該操作に応じた信号を出力すると、情報処理装置100は、ステップS86及びS87と同様の処理を実行する。これにより、情報処理装置100は、重量送信命令と画像送信命令とを出力し(ステップS90)、格納ボックス621から624の重量情報と、格納ボックス621から624の撮像画像を表す画像情報(以下、格納ボックス621から624の画像情報という)と、を取得する(ステップS91)。次に、情報処理装置100は、再度取得された格納ボックス621から624の重量情報でそれぞれ表される重量と、格納ボックス621から624の画像情報でそれぞれ表される撮像画像と、に基づいて、重量及び質の組み合わせが互いに同じ複数の在庫を特定することを再度試行する。その後、情報処理装置100の指示部120は、重量及び質の組み合わせが互いに同じ複数の在庫が特定されたか否かを再度判別する(ステップS92)。
このとき、情報処理装置100の指示部120は、複数の注文商品G2の在庫が特定されたと判別すると(ステップS92;Yes)、特定された複数の在庫の数を再度計数する。次に、指示部120は、ステップS89で入れ替えが指示される前に計数された数よりも、今回計数された数の方が少ないか否かを判別する。すなわち、ステップS89で指示された入れ替えの前よりも、重量及び質の組み合わせが互いに同じ複数の在庫の数が減少したか否かを判別する(ステップS93)。このとき、情報処理装置100は、数が減少していないと判別すると(ステップS93;No)、ステップS89から上記処理を繰り返す。
ステップS88若しくはステップS92において、重量及び質の組み合わせが互いに同じ複数の在庫が特定されなかったと判別される場合(ステップS88;No、若しくは、ステップS92;No)、又は、ステップS93で、重量及び質の組み合わせが互いに同じ複数の在庫の数が減少したと判別される場合(ステップS93;Yes)、情報処理装置100の制御部130は、決済フラグを値「false」で初期化する(ステップS94)。決済フラグは、注文個数「2個」の注文商品G2の在庫と、注文個数「3個」の注文商品G3の在庫と、に関する支払金額の決済が完了しているか否かを表すフラグであり、値「false」の決済フラグは、当該決済が完了していないことを表す。決済フラグは、情報記憶部190の共有メモリに記憶されている。情報記憶部190の共有メモリとは、互いに異なるプロセス又はスレッドで実行される、図24及び図25の移動制御処理と、後述する図27の決済処理と、の双方の実行時において、情報処理装置100のCPU101が読出可能であり、かつ、書込可能な、情報記憶部190の記憶領域である。
また、情報処理装置100の特定部140は、実施例1の変形例15で説明した検出方法を実行することで、格納ボックス621の撮像画像から、格納ボックス621に格納された在庫のラベルに記載されたコードを検出し、検出されたコードで表される価格を特定する。本実施例では、格納ボックス621に格納された在庫の価格「10,100円」が特定された場合を具体例として挙げて以下の説明を行う。このため、情報処理装置100の制御部130は、図26のボックステーブルへ、ボックスID「B1」に対応付けて、注文商品G2の商品ID「G2」と、特定された注文商品G2の在庫の価格「10,100円」を表す情報と、値「false」の選択フラグと、を保存する。格納ボックス621のボックスID「B1」と対応付けられた値「false」の選択フラグは、格納ボックス621に格納された在庫が、受取人によって受け取られる在庫として選択されていないことを表すフラグである。
同様に、情報処理装置100の特定部140は、格納ボックス622から624の画像情報に基づいてコードを検出し、検出されたコードで表される価格を特定する。格納ボックス622から624の画像情報は、格納ボックス622から624にそれぞれ格納された在庫を撮像することで得られた画像を表す情報であり、かつ、ボックスID「B2」から「B4」と共に取得された画像情報である。本実施例では、格納ボックス622に格納された在庫の価格「10,200円」、格納ボックス623の在庫の価格「10,300円」、及び、格納ボックス624の在庫の価格「10,400円」が特定された場合を具体例として挙げて以下の説明を行う。このため、制御部130は、ボックステーブルへ、ボックスID「B2」に対応付けて、商品ID「G2」と価格「10,200円」を表す情報と値「false」の選択フラグとを保存する。また、制御部130は、ボックスID「B3」に対応付けて、商品ID「G2」と価格「10,300円」を表す情報と値「false」の選択フラグとを保存し、かつ、ボックスID「B4」に対応付けて、商品ID「G2」と価格「10,400円」を表す情報と値「false」の選択フラグとを保存する。
また、情報処理装置100の特定部140は、格納ボックス625の画像情報で表される撮像画像から、格納ボックス625に格納された積載個数「3個」の在庫のラベルにそれぞれ記載されたコードを検出し、検出された「3個」のコードでそれぞれ表される価格を特定する。格納ボックス625の画像情報とは、格納ボックス625に格納された在庫を撮像することで得られた画像を表す情報であり、かつ、格納ボックス625のボックスID「B5」と共に取得された画像情報である。本実施例では、積載個数「3個」の注文商品G3の在庫それぞれの価格「300円」が特定された場合を具体例として挙げて以下の説明を行う。このため、制御部130は、積載個数「3個」の注文商品G3の在庫の合計価格「900円」を算出し、注文商品G3の商品ID「G3」と、算出された合計価格「900円」を表す情報と、値「true」の選択フラグとをボックスID「B5」に対応付けて、ボックステーブルへ保存する。ボックスID「B5」と対応付けられた値「true」の選択フラグは、格納ボックス625に格納された在庫が、受取人によって受け取られる在庫として選択されていることを表すフラグである。注文商品G3の商品ID「G3」と、値「true」の選択フラグと、が対応付けられて保存されるのは、注文商品G3の在庫の積載個数は、注文個数「3個」に設定されているため、移動機600に積載される積載個数「3個」の注文商品G3の在庫の全てが受取人によって選択されて受け取られるためである。
次に、情報処理装置100の制御部130は、格納ボックス621から625のボックスID「B1」から「B5」を含み、かつ、格納ボックス621から625の施錠を命じる施錠命令を、移動機600を宛先としてデータ通信回路104aに出力する(ステップS95)。その後、情報処理装置100のデータ通信回路104aは、施錠命令を移動機600へ送信する。
移動機600のデータ通信回路694aが施錠命令を受信すると、CPU691は、データ通信回路694aから施錠命令を取得し、取得された施錠命令に含まれるボックスID「B1」から「B5」でそれぞれ識別される格納ボックス621から625を施錠させる制御信号を駆動回路699へ出力する。これにより、移動機600は、格納ボックス621から625を施錠する。
次に、情報処理装置100は、図11のステップS19と同様の処理を実行することで、配送予定通知と、注文商品G2の在庫の選択を促すメッセージと、注文商品G3が格納されている格納ボックスを知らせるメッセージと、を生成する。本実施例において、注文商品G2の在庫の選択を促すメッセージは、注文商品G2の在庫の撮像画像と、注文商品G2の在庫の質及び重量と、に基づいて、格納ボックス621から624にそれぞれ格納されたの在庫の内で、受取人が受け取る注文個数「2個」の在庫を選択することを促すメッセージである。注文商品G2の在庫とは、格納ボックス621から624にそれぞれ格納された注文商品G2の在庫を意味する。また、注文商品G2の在庫の撮像画像とは、格納ボックス621から624にそれぞれ格納された注文商品G2の在庫を撮像することで得られた撮像画像である。
このため、注文商品G2の在庫の選択を促すメッセージには、格納ボックス621のボックスID「B1」と、格納ボックス621の最新の重量情報と、格納ボックス621の最新の画像情報に基づいて特定された在庫の質を表す情報と、が含まれる。格納ボックス621の最新の重量情報とは、格納ボックス621に格納された在庫の測定された重量を表す情報であり、かつ、格納ボックス621のボックスID「B1」と共に最後に取得された重量情報である。格納ボックス621の最新の画像情報とは、格納ボックス621に格納された在庫を撮像することで得られた画像を表す情報であり、かつ、格納ボックス621のボックスID「B1」と共に最後に取得された画像情報である。
また、注文商品G2の在庫の選択を促すメッセージには、格納ボックス622から624のボックスID「B2」から「B4」と、格納ボックス622から624の最新の重量情報と、格納ボックス622から624の最新の画像情報に基づいて特定された在庫の質を表す情報と、が含まれる。格納ボックス622から624の最新の重量情報とは、格納ボックス622から624にそれぞれ格納された在庫の測定された重量を表す情報であり、かつ、格納ボックス622から624のボックスID「B2」から「B4」と共に最後にそれぞれ取得された重量情報である。格納ボックス622から624の最新の画像情報とは、格納ボックス622から624にそれぞれ格納された在庫を撮像することで得られた画像を表す情報であり、かつ、格納ボックス622から624のボックスID「B2」から「B4」と共に最後にそれぞれ取得された画像情報である。さらに、注文商品G2の在庫の選択を促すメッセージには、注文商品G2の商品ID「G2」又は名称「サーロイン牛肉」を表す情報、積載個数「4個」を表す情報、及び、注文商品G2の注文個数「2個」を表す情報が含まれる。
注文商品G3が格納されている格納ボックス625を知らせるメッセージは、注文個数「3個」の注文商品G3の在庫が格納ボックス625に格納されていることを知らせるメッセージである。当該メッセージは、注文商品G3の商品ID「G3」又は名称「塩」を表す情報、格納ボックス625のボックスID「B5」、及び、注文商品G3の注文個数「3個」を表す情報を含んでいる。
その後、情報処理装置100の制御部130は、生成された配送予定通知に、注文商品G2の在庫の選択を促すメッセージ、及び、格納ボックス621から624の最新の画像情報と、注文商品G3が格納されている格納ボックス625を知らせるメッセージと、を追加する。格納ボックス621から624の最新の画像情報とは、格納ボックス621の最新の画像情報と、格納ボックス622から624の最新の画像情報と、を含む。その後、制御部130は、配送予定通知を、注文者の端末装置700を宛先としてデータ通信回路104aへ出力する(ステップS96)。次に、情報処理装置100のデータ通信回路104aは、配送予定通知を端末装置700へ送信し、端末装置700は、配送予定通知を受信して表示する。
端末装置700に表示された配送予定通知を視認した注文者は、配送予定通知に従って、移動機600に積載された積載個数「4個」の注文商品G2の在庫から、受け取る注文個数「2個」の在庫を選択する。次に、注文者が携帯する端末装置700は、注文者の操作に従って、選択された注文個数「2個」の在庫をそれぞれ格納する格納ボックスを識別するボックスIDを含み、当該注文個数「2個」の在庫が選択されたことを告げる選択報告を生成する。その後、端末装置700は、注文者の認証情報を含む認証要求と、選択報告と、を情報処理装置100へ送信する。本実施例では、格納ボックス621及び622にそれぞれ格納された在庫が選択されたため、選択報告には、格納ボックス621及び622のボックスID「B1」及び「B2」が含まれている場合を具体例として挙げて以下の説明を行う。
情報処理装置100のデータ通信回路104aが認証要求と選択報告とを受信すると、情報処理装置100のCPU101は、認証が成功した場合に、選択された在庫の価格に基づいて決済を行う、図27に示すような決済処理を、図24及び図25の移動制御処理と並列に実行する。このために、CPU101は、移動制御処理を実行するプロセス又はスレッドと異なるプロセス又はスレッドで、決済処理を実行する。
ここで、移動制御処理の説明を中断して、図27の決済処理の説明を行う。決済処理の実行を開始すると、情報処理装置100は、図3のステップS01及びS02と同様の処理を実行する。これにより、情報処理装置100は、認証要求を取得し(ステップS121)、取得された認証要求に含まれる認証情報に基づいて、ユーザ認証が成功したか否かを判別する(ステップS122)。このとき、情報処理装置100は、ユーザ認証が成功せず失敗したと判別すると(ステップS122;No)、決済処理の実行を終了する。これに対して、ユーザ認証が成功したと判別されると(ステップS122;Yes)、取得部110は、データ通信回路104aから選択報告を取得し(ステップS123)、取得された選択報告からボックスID「B1」及び「B2」を取得する(ステップS124)。次に、情報処理装置100の制御部130は、図26のボックステーブルにおいて、ボックスID「B1」に対応付けられている選択フラグの値を「true」に変更し、ボックスID「B2」に対応付けられている選択フラグの値を「true」に変更する(ステップS125)。このような変更がされるのは、ボックスID「B1」及び「B2」で識別される格納ボックス621及び622にそれぞれ格納された在庫が、受取人によって受け取られる受取在庫として選択されたためである。
次に、情報処理装置100の取得部110は、ボックステーブルから、値「true」の選択フラグとそれぞれ対応付けられている価格「10,100円」を表す情報と、価格「10,200円」を表す情報と、合計価格「900円」を表す情報と、を取得する(ステップS126)。その後、制御部130は、取得された情報でそれぞれ表される価格の合計価格「21,200円」を、受取人によって受け取られる注文個数「2個」の注文商品G2の受取在庫の価格と、注文個数「3個」の注文商品G3の受取在庫の価格と、の合計価格として算出する。その後、制御部130は、合計価格「21,200円」に基づいて注文者の支払金額を算出し、図12のステップS32と同様の処理を実行することで、支払金額を決済する決済処理を実行する(ステップS127)。その後、制御部130は、情報記憶部190が共有メモリに記憶する決済フラグの値を、決済が完了したことを表す値「true」に変更した後に(ステップS128)、決済処理の実行を終了する。
次に、決済処理と並列に実行される、図24及び図25の移動制御処理の説明を再開する。図24のステップS96で、配送予定通知を出力した後、情報処理装置100は、図11のステップS20からS22と同様の処理を実行する。これにより、情報処理装置100は、積載個数「4個」の注文商品G2の在庫と、積載個数「3個」の注文商品G3の在庫と、を積載した移動機600を配送先の位置D1まで移動させる制御を行い(ステップS97及びS98)、移動機600が位置D1に到着すると受取要求を端末装置700へ送信する(ステップS99)。
その後、情報処理装置100は、図12のステップS23と同様の処理を実行することで、受取要求を出力してから予め定められた受渡時間が経過したか否かを判別する(ステップS100)。このとき、情報処理装置100は、受渡時間が経過していないと判別すると(ステップS100;No)、図12のステップS24と同様の処理を実行することで、配送先の位置D1に現れた受取人の操作に応じて移動機600が送信した認証要求を取得し、取得された認証要求に従って認証を行う(ステップS101)。このとき、情報処理装置100は、認証が成功せず失敗したと判別すると(ステップS101;No)、ステップS100から上記処理を繰り返す。これに対して、認証が成功したと判別されると(ステップS101;Yes)、情報処理装置100の取得部110は、情報記憶部190の共有メモリに保存されている決済フラグを取得する。次に、情報処理装置100の制御部130は、取得された決済フラグの値が、決済が完了していることを表す値「true」であるか否かを判別する(ステップS102)。
このとき、情報処理装置100の制御部130は、決済フラグの値が「true」ではなく、決済が完了していないことを表す「false」であると判別すると(ステップS102;No)、注文商品G2の在庫の選択を促すメッセージと、注文商品G2の最新の画像情報と、を、移動機600を宛先としてデータ通信回路104aに出力する。注文商品G2の在庫の最新の画像情報とは、注文商品G2の在庫が格納されている格納ボックス621から624の最新の画像情報である。その後、情報処理装置100は、当該メッセージと当該画像情報とを移動機600へ送信した後に、ステップS100から上記処理を繰り返す。
移動機600は、注文商品G2の在庫の選択を促すメッセージと、注文商品G2の最新の画像情報と、を受信して表示する。このとき、受取人が注文者と同一人物であれば、当該メッセージを視認した受取人は、積載個数「4個」の注文商品G2の在庫から、受け取る注文個数「2個」の在庫を選択する。次に、受取人は、選択された注文個数「2個」の在庫をそれぞれ格納する格納ボックスのボックスIDを含んだ選択報告を送信させるための操作を端末装置700に行う。これに対して、受取人が注文者に受け取りを依頼された者であれば、受取人は、在庫の選択及び端末装置700の操作を注文者にさせる。その後、情報処理装置100は、選択報告を端末装置700から受信すると、移動制御処理を実行するプロセス又はスレッドと異なるプロセス又はスレッドで、図27に示した決済処理を実行する。これにより、決済フラグの値が「true」に変更される。
ステップS102において、決済フラグの値が「true」であると判別されると(ステップS102;Yes)、情報処理装置100の取得部110は、図26のボックステーブルから、値「true」の選択フラグと対応付けられているボックスID「B1」、「B2」、及び、「B5」を取得する(ステップS103)。次に、制御部130は、ボックスID「B1」、「B2」、及び、「B5」を含み、かつ、格納ボックス621、622、及び、625の解錠を命じる解錠命令を、移動機600を宛先としてデータ通信回路104aへ出力する(ステップS104)。その後、情報処理装置100のデータ通信回路104aは、解錠命令を移動機600に送信する。
移動機600のデータ通信回路694aが解錠命令を受信すると、移動機600のCPU691は、データ通信回路694aから解錠命令を取得し、取得された解錠命令からボックスID「B1」、「B2」、及び、「B5」を取得する。次に、CPU691は、ボックスID「B1」、「B2」、及び、「B5」でそれぞれ識別される格納ボックス621、622、及び、625を解錠させる制御信号を駆動回路699へ出力する。これにより、移動機600は、格納ボックス621及び622を解錠することで、移動機600の状態を、選択された注文個数「2個」の注文商品G2の在庫を受取人が受取可能な状態にする。また、移動機600は、格納ボックス625を解錠することで、移動機600の状態を、積載個数「3個」の注文商品G3の在庫の全てを受取人が受取可能な状態にする。
その後、情報処理装置100は、図12のステップS26、S28からS30、及び、S33と同様の処理を実行する(ステップS105からS109)。これにより、情報処理装置100は、注文個数「2個」の注文商品G2の在庫と、積載個数「3個」の注文商品G3の在庫と、が受け渡された後に、移動機600を実店舗の位置Sへ帰還させる制御を行う。その後、情報処理装置100は、ステップS81から上記処理を繰り返す。
ステップS100において、受取要求が出力されてから予め定められた受渡時間が経過したと判別すると(ステップS100;Yes)、情報処理装置100は、ステップS106から移動制御処理の実行を継続する。
これらの構成によれば、在庫の量は、当該在庫の重量を含む。また、移動機600は、格納される在庫の重量を計測する計測装置CW、及び、格納される在庫を撮像する撮像装置CRを備えた格納ボックス621から625を備える。また、情報処理装置100は、注文商品G2の在庫を格納する積載個数「4個」の格納ボックス621から624がそれぞれ備える計測装置CWが計測した重量を表す重量情報、及び、撮像装置CRが撮像により得た撮像画像を表す画像情報を受信するデータ通信回路104aをさらに備える。さらに、情報処理装置100は、受信された積載個数「4個」の重量情報と、受信された積載個数「4個」の画像情報と、に基づいて、積載個数「4個」の在庫の内で、重量及び質が互いに同じ複数の在庫の特定を試行する特定部140をさらに備える。またさらに、情報処理装置100の指示部120は、複数の在庫が特定されると、特定された複数の在庫の少なくとも1つの入れ替えを指示する。このため、情報処理装置100は、重量及び質が互いに同じ複数の注文商品G2の在庫が移動機600に積載されることを抑制できる。
これらの構成によれば、情報処理装置100のデータ通信回路104aは、入れ替え後に、注文商品G2の在庫を格納する積載個数「4個」の格納ボックス621から624がそれぞれ備える計測装置CWが計測した重量を表す重量情報、及び、撮像装置CRが撮像により得た撮像画像を表す画像情報を再度受信する。情報処理装置100の特定部140は、入れ替え後に受信された積載個数「4個」の重量情報と、入れ替え後に受信された積載個数「4個」の画像情報と、に基づいて、重量及び質が互いに同じ複数の在庫の特定を再度試行する。情報処理装置100は、入れ替え後に特定された複数の在庫の数が、入れ替え前に特定された複数の在庫の数よりも少ないと、積載個数「4個」の注文商品G2の在庫を積載した移動機600を配送先の位置D1へ移動させる移動制御を行う制御部130をさらに備える。このため、情報処理装置100は、配送される積載個数「4個」の注文商品G2の在庫に含まれる、重量及び質が互いに同じ在庫の数を減らすことができる。よって、情報処理装置100は、積載個数「4個」の在庫から受取人が選択可能な在庫の組み合わせの数を増やすことができる。
さらに、これらの構成によれば、情報処理装置100のデータ通信回路104aは、積載個数「4個」の注文商品G2の在庫が移動機600に積載されると、注文商品G2の在庫をそれぞれ格納する積載個数「4個」の格納ボックス621から624の施錠を命じる施錠命令を移動機600へ送信する。また、データ通信回路104aは、移動機600が配送先の位置D1に到着するよりも前に、受信された積載個数「4個」の重量情報、及び、積載個数「4個」の画像情報を注文者が使用する端末装置700へ送信する。さらに、データ通信回路104aは、端末装置700から、注文者によって選択された注文個数「2個」の注文商品G2の在庫をそれぞれ格納する格納ボックス621及び622を識別するボックスID「B1」及び「B2」を受信する。またさらに、データ通信回路104aは、移動機600が配送先の位置D1に到着すると、受信された注文個数「2個」のボックスID「B1」及び「B2」でそれぞれ識別される格納ボックス621及び622の解錠を命じる解錠命令を移動機600へ送信する。このため、情報処理装置100は、重量及び質に基づいて注文者が選択した注文個数「2個」の在庫をそれぞれ格納する格納ボックス621及び622を解錠させるが、選択されなかった余剰個数「2個」の在庫をそれぞれ格納する格納ボックス623及び624を施錠したまま維持する。よって、情報処理装置100は、選択された注文商品G2の在庫の受け渡しの際に、選択されなかった注文商品G2の在庫が、例えば、汚損又は破損することを防止できる。
<実施例2の変形例1>
実施例2では、注文商品G2の在庫の重量及び質が均一性を有さず、かつ、注文商品G3の在庫の重量及び質が均一性を有する場合を具体例として挙げて説明したが、これに限定される訳では無い。本変形例では、注文商品G2の在庫の重量が均一性を有さないが、注文商品G2の在庫の質が均一性を有し、かつ、注文商品G3の在庫の重量及び質が均一性を有している。
本変形例に係る格納ボックス621から625は、計測装置CWを備えるが、実施例2で説明した撮像装置CRを備えない。このため、情報処理装置100のデータ通信回路104aは、注文商品G2の在庫を格納する積載個数「4個」の格納ボックス621から624がそれぞれ備える計測装置CWが計測した重量を表す重量情報を受信するが、実施例2で説明した画像情報を受信しない。また、データ通信回路104aは、移動機600が配送先の位置D1に到着するよりも前に、受信された積載個数「4個」の重量情報を注文者が使用する端末装置700へ送信するが、画像情報を送信しない。さらに、特定部140は、受信された積載個数「4個」の重量情報でそれぞれ表される重量に基づいて、積載個数「4個」の在庫の内で、重量が互いに同じ複数の在庫の特定を試行する。指示部120は、複数の注文商品G2の在庫が特定されると、特定された複数の注文商品G2の在庫の少なくとも1つの入れ替えを指示する。
本変形例に係る情報処理装置100のデータ通信回路104aは、入れ替え後に、注文商品G2の在庫を格納する積載個数「4個」の格納ボックス621から624がそれぞれ備える計測装置CWが計測した重量を表す重量情報を再度受信する。特定部140は、入れ替え後に受信された積載個数「4個」の重量情報でそれぞれ表される重量に基づいて、重量が互いに同じ複数の在庫の特定を再度試行する。制御部130は、入れ替え後に特定された複数の在庫の数が、入れ替え前に特定された複数の在庫の数よりも少ないと、積載個数「4個」の注文商品G2の在庫を積載した移動機600を配送先の位置D1へ移動させる移動制御を行う。
<実施例2の変形例2>
実施例2では、注文商品G2の在庫の重量及び質が均一性を有さず、かつ、注文商品G3の在庫の重量及び質が均一性を有する場合を具体例として挙げて説明したが、これに限定される訳では無い。本変形例では、注文商品G2の在庫の重量が均一性を有するが、注文商品G2の在庫の質が均一性を有しておらず、かつ、注文商品G3の在庫の重量及び質が均一性を有している。
本変形例に係る格納ボックス621から625は、実施例2で説明した計測装置CWを備えないが、撮像装置CRを備える。このため、情報処理装置100のデータ通信回路104aは、注文商品G2の在庫を格納する積載個数「4個」の格納ボックス621から624がそれぞれ備える撮像装置CRが撮像により得た撮像画像を表す画像情報を受信するが、実施例2で説明した重量情報を受信しない。また、データ通信回路104aは、移動機600が配送先の位置D1に到着するよりも前に、受信された積載個数「4個」の画像情報を注文者が使用する端末装置700へ送信するが、重量情報を送信しない。さらに、特定部140は、受信された積載個数「4個」の画像情報でそれぞれ表される撮像画像に基づいて、積載個数「4個」の在庫の内で、質が互いに同じ複数の在庫の特定を試行する。指示部120は、複数の在庫が特定されると、特定された複数の在庫の少なくとも1つの入れ替えを指示する。
本変形例に係る情報処理装置100のデータ通信回路104aは、入れ替え後に、注文商品G2の在庫を格納する積載個数「4個」の格納ボックス621から624がそれぞれ備える撮像装置CRが撮像により得た撮像画像を表す画像情報を再度受信する。特定部140は、入れ替え後に受信された積載個数「4個」の画像情報でそれぞれ表される撮像画像に基づいて、質が互いに同じ複数の在庫の特定を再度試行する。制御部130は、入れ替え後に特定された複数の在庫の数が、入れ替え前に特定された複数の在庫の数よりも少ないと、積載個数「4個」の注文商品G2の在庫を積載した移動機600を配送先の位置D1へ移動させる移動制御を行う。
<実施例2の変形例3>
実施例2では、商品G2の在庫の大きさが均一性を有さず、商品G3の在庫の大きさが均一性を有する場合を具体例として挙げて説明したが、これに限定される訳では無い。本変形例では、商品G2の在庫の部位が均一性を有さず、商品G3の在庫の部位が均一性を有する場合を具体例として挙げて説明する。
本変形例では、商品G2の在庫の部位が均一性を有さないとは、実施例1の変形例7で説明した通り、商品G2の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G2の2つの在庫を無作為に抽出すると、抽出された2つの在庫の部位が互いに異なる確率が、予め定められる閾値よりも高いことを意味する。また、商品G3の在庫の部位が均一性を有するとは、商品G3の在庫が実店舗に複数存在する場合、当該複数の在庫から、商品G3の2つの在庫を無作為に抽出すると、抽出された2つの在庫の部位が互いに異なる確率が、予め定められる閾値以下であることを意味する。
本変形例では、情報処理装置100の特定部140は、格納ボックス621の撮像画像に基づいて、格納ボックス621に格納された注文商品G2の在庫の部位を特定する。このため、例えば、取得部110は、部位のテンプレート画像を表す情報を情報記憶部190から取得する。次に、特定部140は、取得された情報で表されるテンプレート画像と、格納ボックス621の撮像画像と、を用いてテンプレートマッチングを行うことで、格納ボックス621に格納された注文商品G2の在庫の部位を特定する。すなわち、例えば、商品G2が魚である場合、部位「前半分」のテンプレート画像と、部位「後半分」のテンプレート画像と、格納ボックス621の撮像画像と、を用いてテンプレートマッチングを行うことで、特定部140は、当該在庫の部位が「前半分」であるか「後半分」であるかを特定する。
この場合、情報処理装置100の特定部140は、部位「前半分」のテンプレート画像と、格納ボックス621の撮像画像と、を用いてテンプレートマッチングを行うことで、部位「前半分」に対応する画像領域が格納ボックス621の撮像画像から特定されると、格納ボックス621に格納された在庫の部位が「前半分」であることを特定する。これに対して、特定部140は、部位「前半分」に対応する画像領域が特定されないと、部位「後半分」のテンプレート画像と、格納ボックス621の撮像画像と、を用いてテンプレートマッチングを行う。次に、特定部140は、テンプレートマッチングによって、部位「後半分」に対応する画像領域が格納ボックス621の撮像画像から特定されると、格納ボックス621に格納された在庫の部位が「後半分」であることを特定する。しかし、これに限定される訳ではなく、特定部140は、部位「前半分」に対応する画像領域が特定されないと、在庫の部位が「後半分」であると特定しても良い。
<実施例2の変形例4>
実施例2では、商品G2の在庫の大きさが均一性を有さず、商品G3の在庫の大きさが均一性を有する場合を具体例として挙げて説明したが、これに限定される訳では無い。本変形例では、商品G2の在庫の鮮度が均一性を有さず、商品G3の在庫の鮮度が均一性を有する場合を具体例として挙げて説明する。
本変形例では、情報処理装置100の特定部140は、格納ボックス621の撮像画像に基づいて、格納ボックス621に格納された注文商品G2の在庫の鮮度を特定する。このため、特定部140は、例えば、OCR(Optical Character Recognition)処理を実行することで、格納ボックス621の撮像画像から、例えば、在庫に貼付されたラベルに記載されている文字列「消費期限」と、当該文字列の直前又は直後に記載されている日時を表す文字列と、を特定する。次に、特定部140は、特定された文字列で表される日時を、当該在庫の消費期限と特定し、特定された消費期限を、当該在庫の鮮度を表す物理量と特定する。しかし、これに限定される訳ではなく、取得部110は、例えば、OS(Operating System)からシステム日時を表す情報を取得し、特定部140は、取得された情報で表されるシステム日時から、特定された文字列で表される消費期限までの時間長を、注文商品G2の在庫の鮮度を表す物理量と特定しても良い。また、これに限定される訳ではなく、特定部140は、格納ボックス621の撮像画像にOCR処理を実行することで、例えば、在庫のラベルに記載されている文字列「加工日時」と、当該文字列の直前又は直後に記載されている日時を表す文字列を特定しても良い。この場合、特定部140は、特定された文字列で表される日時を、当該在庫の加工日時と特定し、特定された加工日時を、当該在庫の鮮度を表す物理量と特定しても良い。
<実施例2の変形例5>
本変形例では、情報処理装置100は、移動機600に積載された複数の在庫の内で、受取人に選択されず受け取られなかった1又は複数の在庫を実店舗のユーザに販売する。このため、本変形例に係る情報処理システム1は、図28に示すように、情報処理装置100と、実店舗に設置された表示装置200と、移動機600と、端末装置700から900と、を備える。端末装置700は、仮想店舗の不図示のユーザU1によって携帯され、端末装置800及び900は、実店舗の不図示のユーザU2及びU3によってそれぞれ携帯される。端末装置800及び900の構成及び機能は、端末装置700の構成及び機能と同様である。
本変形例に係る情報処理装置100のCPU101は、起動すると、図24及び図29に示すような移動制御処理を実行する。情報処理装置100は、移動制御処理の実行を開始すると、実施例2で説明したステップS81及びS82の処理を実行することで、未実行の配送予定に注目する(ステップS81及びS82)。本変形例では、実施例2と同様に、注文個数「2個」の注文商品G2と、注文個数「3個」の注文商品G3と、をユーザU1に指定された配送先の位置D1まで配送する配送予定が注目された場合を具体例として挙げて以下の説明を行う。
次に、情報処理装置100は、実施例2で説明したステップS83からS99の処理を実行することで、積載個数「4個」の注文商品G2の在庫と、積載個数「3個」の注文商品G3の在庫と、を積載した移動機600を配送先の位置D1へ移動させてから、注文者であるユーザU1の端末装置700へ受取要求を送信する(ステップS83からS99)。
その後、情報処理装置100は、受取要求を出力してから予め定められた受渡時間が経過していないと判別すると(ステップS100;No)、実施例2で説明したステップS101からS105の処理を実行する。これにより、情報処理装置100は、注文個数「2個」の注文商品G2の在庫と、注文個数「3個」の注文商品G3の在庫と、が受取人に受け渡されたことを告げる受渡報告を取得する(ステップS101からS105)。
次に、情報処理装置100の制御部130は、余剰個数「2個」の注文商品G2の在庫を、実店舗のユーザであり、かつ、これらの在庫を選択せず受け取らなかったユーザU1と異なるユーザにセット販売することを決定する(ステップS106a)。余剰個数「2個」の在庫を販売することが決定されるのは、本変形例では、配送された注文商品G2の在庫を、配送されていない注文商品G2の在庫が陳列又は保管されている、例えば、実店舗の売り場又はバックヤードの棚を含む、予め定められた場所(以下、元の場所という)へ戻すことが、例えば、品質管理上の理由から、許されていないためである。配送された在庫を元の場所に戻すことが許されていないのは、配送された在庫は、配送されていない在庫と同一の条件で保管されていた訳では無いため、配送された在庫の品質を表す物理量が、配送されていない在庫の品質を表す物理量と、予め定められた量以上異なる蓋然性が、予め定められた蓋然性よりも高いためである。すなわち、そのような蓋然性のある在庫と、配送されていない在庫と、を、同じ場所で陳列又は管理することが、例えば、実店舗の品質管理上の規則により、禁止されているからである。在庫の品質を表す物理量は、例えば、在庫に付着している細菌又はウィルスの数であっても良いし、在庫の温度であっても良いし、在庫の形状を表す物理量であっても良い。蓋然性は、確率で表されても良い。予め定められた蓋然性を表す確率は、正の確率であればどのような値であっても良く、好適な値は、当業者が実験により定めることができる。
また、本変形例では、配送されていない注文商品G2の在庫を陳列又は保管するための場所と異なる場所であり、かつ、配送された注文商品G2の在庫を陳列又は保管するための場所が実店舗に存在しない。このため、注文商品G2の在庫が購入されない場合、実店舗の従業員は、注文商品G2の在庫を元の場所に戻すことができず、廃棄しなければならない。
本変形例では、余剰個数「2個」の在庫をセット販売するとは、余剰個数「2個」の在庫の全てを同じユーザに同時に販売することを意味する。余剰個数「2個」の在庫がセット販売されるのは、余剰個数「2個」の在庫をセット販売しない場合に生じる手間の発生を抑制するためである。セット販売しない場合に生じる手間は、例えば、余剰個数「2個」の在庫の内で、購入した在庫のみを実店舗のユーザが選んで受け取る手間を含む。すなわち、余剰個数「2個」の在庫がセット販売されるのは、ユーザが在庫を選んで受け取る手間の発生を抑制することで、ユーザの利便性の低下を抑制するためである。
また、セット販売しない場合に生じる手間は、例えば、余剰個数「2個」の在庫の内で、販売されなかった在庫を、実店舗の従業員が廃棄する手間を含む。すなわち、余剰個数「2個」の在庫がセット販売されるのは、販売されなかった在庫を従業員が廃棄する手間が生じないようにすることで、従業員に生じる身体的負荷の増加を抑制するためである。
余剰個数「2個」の在庫の販売が決定された後、情報処理装置100の制御部130は、情報記憶部190が共有メモリに記憶する決済フラグの値を値「false」で初期化する(ステップS106b)。決済フラグの値が「false」で初期化されるのは、余剰個数「2個」の在庫の販売が決定されたに過ぎず、余剰個数「2個」の在庫の注文が未だ受け付けられていないため、余剰個数「2個」の在庫に関する支払金額の決済が未だ行われていないからである。本変形例に係る情報記憶部190の共有メモリとは、互いに異なるプロセス又はスレッドで実行される、図24及び図29の移動制御処理と、図27の決済処理と、後述する図30の販売処理と、の実行時において、情報処理装置100のCPU101が読出可能であり、かつ、書込可能な、情報記憶部190の記憶領域である。
次に、情報処理装置100の制御部130は、ユーザU1によって選択されず受け取られなかった余剰個数「2個」の在庫の合計価格を割り引いた割引価格を決定する(ステップS106c)。このために、情報処理装置100の取得部110は、図26のボックステーブルから、値「false」の選択フラグとそれぞれ対応付けられた価格「10,300円」を表す情報と価格「10,400円」を表す情報とを取得する。次に、情報処理装置100の取得部110は、情報記憶部190が予め記憶する割引率を表す情報を取得する。本変形例では、割引率が「20%」である場合を具体例として挙げて以下の説明を行う。
その後、情報処理装置100の制御部130は、取得された情報でそれぞれ表される価格「10,300円」と価格「10,400円」と割引率「20%」とに基づいて、割引価格「8,240円」と割引価格「8,320円」との合計価格である割引合計価格「16,560円」を決定する。次に、制御部130は、決定された合計割引価格「16,560円」を表す情報を情報記憶部190の共有メモリに保存する。
次に、情報処理装置100の制御部130は、余剰個数「2個」の在庫の商品ID「G2」又は名称「サーロイン牛肉」と、割引合計価格「16,560円」を表す情報と、を含み、余剰個数「2個」の在庫の購入を促す販促通知を生成する。本変形例では、販促通知には、割引合計価格「16,560円」を表す情報が含まれるが、これに限定される訳ではなく、割引率「20%」を表す情報、割引価格「8,240円」及び「8,320円」を表す情報、並びに、割引額「4,140円」を表す情報の少なくとも1つがさらに含まれても良い。
その後、情報処理装置100の制御部130は、余剰個数「2個」の在庫の購入に用いられるウェブ頁(以下、余剰在庫のウェブ頁という)を生成し、生成された余剰在庫のウェブ頁を情報記憶部190に保存する。本変形例では、余剰在庫のウェブ頁には、例えば、ボタン又はリンクである、余剰個数「2個」の在庫の購入に用いられるオブジェクトが掲載されている。また、余剰在庫のウェブ頁には、余剰個数「2個」の在庫の商品ID「G2」又は名称「サーロイン牛肉」、格納ボックス623及び624の最新の画像情報、並びに、割引合計価格「16,560円」が記載されている。格納ボックス623及び624の最新の画像情報は、格納ボックス623及び624にそれぞれ格納されている受け取られなかった在庫を撮像することで得られた画像を表す情報であり、かつ、格納ボックス623及び624のボックスID「B3」及び「B4」と共に最後にそれぞれ取得された画像情報である。余剰在庫のウェブ頁には、割引率「20%」を表す情報、割引価格「8,240円」及び「8,320円」を表す情報、並びに、割引額「4,140円」を表す情報の少なくとも1つがさらに記載されていても良い。
次に、情報処理装置100の制御部130は、余剰在庫のウェブ頁のURLを表すコードを生成する。URLを表すコードは、例えば、一次元コードであっても良いし、二次元コードであっても良い。本変形例では、URLを表すコードは、二次元コードであるQRコード(登録商標)であるが、これに限定される訳ではない。その後、制御部130は、余剰在庫のウェブ頁のURLを表す二次元コードを販促通知に追加してから、販促通知を、実店舗に在る表示装置200を宛先としてデータ通信回路104aへ出力する(ステップS106d)。情報処理装置100のデータ通信回路104aは、販促通知を表示装置200へ送信し、表示装置200は、販促通知を受信して表示する。このようにして、制御部130は、表示装置200に販促通知を表示させる表示制御を行う。
本変形例では、実店舗で買い物をする不図示のユーザU2が、実店舗に設置された表示装置200に表示された販促通知を視認し、余剰個数「2個」の在庫を購入することを決定した場合を具体例として挙げて以下の説明を行う。このため、ユーザU2が携帯する端末装置800は、ユーザU2の操作に従って、端末装置800が備える不図示の撮像装置を用いて、販促通知に含まれる二次元コードを撮像し、撮像により得られた画像に基づいて、余剰在庫のウェブ頁のURLを取得する。次に、端末装置800は、ユーザU2の操作に従って、取得されたURLを含み、当該URLに在るウェブ頁の送信を求める頁送信要求を、情報処理装置100へ送信する。
情報処理装置100のデータ通信回路104aが頁送信要求を受信すると、情報処理装置100のCPU101は、余剰在庫のウェブ頁を用いて、余剰個数「2個」の在庫を販売する、図30に示すような販売処理を、図24及び図29の移動制御処理と並列に実行する。このために、CPU101は、移動制御処理を実行するプロセス又はスレッドと異なるプロセス又はスレッドで、販売処理を実行する。
ここで、移動制御処理の説明を中断して、図30の販売処理の説明を行う。販売処理の実行を開始すると、情報処理装置100の取得部110は、データ通信回路104aから頁送信要求を取得し、取得された頁送信要求からURLを取得する。次に、取得部110は、取得されたURLに在る余剰在庫のウェブ頁を情報記憶部190から取得し、取得されたウェブ頁を、端末装置800を宛先としてデータ通信回路104aへ出力する(ステップS121)。その後、データ通信回路104aは、端末装置800へウェブ頁を送信する。
端末装置800は、余剰在庫のウェブ頁を受信して表示する。ウェブ頁を視認したユーザU2は、余剰個数「2個」の在庫の購入に用いられるオブジェクトを選択するための操作を端末装置800に行う。端末装置800は、ユーザU2の操作に従って、余剰個数「2個」の在庫を販売するように求める販売要求を情報処理装置100へ送信する。
情報処理装置100のデータ通信回路104aが販売要求を受信すると、情報処理装置100の取得部110は、データ通信回路104aから販売要求を取得する(ステップS122)。その後、情報処理装置100の取得部110は、情報記憶部190の共有メモリから、割引合計価格「16,560円」を表す情報を取得する。次に、情報処理装置100は、図12のステップS32と同様の処理を実行することで、割引合計価格「16,560円」に基づく支払金額の決済を行う(ステップS123)。次に、制御部130は、情報記憶部190が共有メモリに記憶する決済フラグの値を、支払金額の決済が完了したことを表す値「true」に変更してから(ステップS124)、販売要求を受け付ける(ステップS125)。
次に、情報処理装置100の制御部130は、余剰個数「2個」の在庫を購入したユーザU2が、これらの在庫を移動機600から受け取るために必要な受取情報を生成する。本変形例では、受取情報は、余剰個数「2個」の在庫を積載した移動機600が受取場所の位置Sに到着する到着時刻を表す情報を含んでいる。このため、情報処理装置100の制御部130は、図11のステップS19と同様の処理を実行することで、移動機600の位置Sへの到着時刻を算出する。本変形例では、到着時刻「13:00」が算出された場合を具体例として挙げて以下の説明を行う。
また、本変形例では、受取情報は、受取場所の位置Sを表す情報をさらに含んでいる。このため、情報処理装置100の取得部110は、受取場所の位置Sを緯度、経度、及び、高度で表す位置情報と、情報記憶部190が予め対応付けて記憶する住所及び地図の少なくとも1つを表す情報を取得する。さらに、本変形例では、受取情報は、在庫の受け取りに用いられるパスワードを含んでいる。このため、情報処理装置100の制御部130は、例えば、ソフトウェア乱数、又は、予め定められた規則に基づいて、パスワードを生成し、生成されたパスワードを情報記憶部190の共有メモリに保存する。
その後、情報処理装置100の制御部130は、受取場所の位置Sを住所及び地図の少なくとも1つで表す情報、移動機600の位置Sへの到着時刻「13:00」を表す情報、及び、移動機600に在庫を解放させるために用いられるパスワードと、を含む受取情報を生成する。また、制御部130は、生成された受取情報を含み、かつ、余剰個数「2個」の注文商品G2の在庫の商品ID「G2」又は名称「サーロイン牛肉」を表す情報を含むメッセージを生成する。次に、制御部130は、生成されたメッセージに、これらの在庫を積載した移動機600が、受取場所の位置Sに、到着時刻「13:00」に到着することを告げるメッセージと、受取場所の位置Sに到着した移動機600にこれらの在庫を解放させるため、パスワードが必要であることを告げるメッセージと、を追加する。
その後、情報処理装置100の制御部130は、受取情報を含んだメッセージを、購入者であるユーザU2の端末装置800を宛先としてデータ通信回路104aへ出力する(ステップS126)。情報処理装置100は、出力されたメッセージを端末装置800へ送信した後に、販売処理の実行を終了する。
端末装置800は、受取要求を受信して表示する。実店舗で買い物をしているユーザU2は、端末装置800の表示を視認した後、移動機600の到着時刻「13:00」に、受取場所である実店舗の駐車場の位置Sへ到着するように移動を開始する。
次に、販売処理と並列に実行される、図24及び図29の移動制御処理の説明を再開する。図29のステップS106dで販促通知が出力された後、情報処理装置100は、実施例2で説明したステップS107及びS108の処理を実行することで、実店舗の位置Sに移動機600を帰還させる(ステップS107及びS108)。次に、情報処理装置100の制御部130は、余剰個数「2個」の在庫が実店舗のユーザに販売されたか否かを判別する。このために、情報処理装置100の取得部110は、情報記憶部190の共有メモリから決済フラグを取得し、制御部130は、取得された決済フラグの値が、余剰個数「2個」の在庫に関する支払金額の決済が完了したことを表す値「true」であるか否かを判別する(ステップS108a)。
情報処理装置100は、決済フラグの値が「true」であると判別すると(ステップS108a;Yes)、ステップS99と同様の処理を実行することで、購入者であるユーザU2の端末装置800へ受取要求を送信する(ステップS108b)。その後、情報処理装置100は、ステップS100及びS101と同様の処理を実行することで、受取要求が出力されてから予め定められた受渡時間が経過していないと判別すると(ステップS108c;No)、ユーザU2の操作に応じて移動機600から送信された認証要求を受信する。次に、情報処理装置100は、受信された認証要求に基づいて認証を行う(ステップS108d)。
次に、情報処理装置100は、認証要求に含まれるパスワードと、情報記憶部190の共有メモリに記憶されているパスワードと、が一致しないため、認証が失敗したと判別すると(ステップS108d;No)、ステップS108cから上記処理を繰り返す。これに対して、情報処理装置100は、これらのパスワードが一致するため、認証が成功したと判別すると(ステップS108d;Yes)、ステップS103及びS104と同様の処理を実行する。これにより、情報処理装置100は、図26のボックステーブルから、値「false」の選択フラグと対応付けられているボックスID「B3」及び「B4」を取得し(ステップS108e)、取得されたボックスID「B3」及び「B4」を含み、かつ、格納ボックス623及び624の解錠を命じる解錠命令を、移動機600を宛先としてデータ通信回路104aへ出力する(ステップS109)。その後、情報処理装置100のデータ通信回路104aは、解錠命令を移動機600に送信する。
移動機600は、解錠命令を受信すると、解錠命令に含まれるボックスID「B3」及び「B4」で識別される格納ボックス623及び624を解錠する。このようにして、情報処理装置100は、移動機600の状態を、販売された余剰個数「2個」の在庫を、購入者であるユーザU2が受取可能な状態にする。
その後、情報処理装置100は、ステップS105と同様の処理を実行することで、余剰個数「2個」の在庫が受け渡されたことを告げる受渡報告を取得してから(ステップS109a)、実施例2で説明したステップS110の処理を実行する(ステップS110)。その後、情報処理装置100は、図24のステップS81から上記処理を繰り返す。
ステップS108aにおいて決済フラグの値が「false」であると判別した場合(ステップS108a;No)、又は、ステップS108cにおいて受取要求が出力されてから予め定められた受渡時間が経過したと判別した場合(ステップS108c;Yes)、情報処理装置100は、実施例2で説明したステップS110の処理を実行する(ステップS110)。その後、情報処理装置100は、図24のステップS81から上記処理を繰り返す。
表示装置200は、例えば、デジタルサイネージである電子看板、又は、電子値札であり、実店舗の売り場に設置されている。表示装置200は、不図示のCPU、RAM、ROM、フラッシュメモリ、データ通信回路、ビデオカード、ディスプレイパネル、及び、入力装置を備える。表示装置200が備えるCPU、RAM、ROM、データ通信回路、ビデオカード、及び、ディスプレイパネルの構成及び機能は、情報処理装置100が備えるCPU101、RAM102、ROM103a、データ通信回路104a、ビデオカード105a、及び、ディスプレイパネル105bの構成及び機能と同様である。表示装置200は、複数のCPUを備えても良いし、複数のRAM及びフラッシュメモリを備えても良い。表示装置200のフラッシュメモリ及び入力装置の構成及び機能は、移動機600のフラッシュメモリ693b及び入力装置695cの構成及び機能と同様である。
表示装置200のCPUは、起動すると、フラッシュメモリが予め記憶する広告を表す広告情報、又は、価格関連情報を取得し、取得された情報をディスプレイパネルに表示させる。本変形例では、価格関連情報は、商品ID及び当該商品IDで識別される商品の名称を表す情報の少なくとも1つと、当該商品の価格を表す情報と、を含んでいるが、これに限定される訳ではない。価格関連情報は、商品の価格を表す情報のみを含んでも良い。
表示装置200のデータ通信回路が販促通知を受信すると、表示装置200のCPUは、データ通信回路から販促通知を取得する。次に、CPUは、表示装置200のフラッシュメモリから、販促通知を表示する時間として予め設定された表示時間を表す情報を取得する。表示時間の好適な値は、当業者が実験により定めることができる。その後、表示装置200のCPUは、取得された販促通知を、取得された情報で表される表示時間に亘って、広告情報又は価格関連情報と共に、又は、広告情報又は価格関連情報に代えて、ディスプレイパネルに表示させる。その後、CPUは、販促通知の表示を終了し、広告情報又は価格関連情報の表示を継続又は再開する。
これらの構成によれば、情報処理装置100は、受取人であるユーザU1によって選択されず受け渡されなかった余剰個数「2個」の在庫の購入を促す販促通知を、実店舗に在る表示装置200へ送信するデータ通信回路104aを備える。本変形例では、上述の通り、配送された在庫を、配送されていない在庫が陳列又は保管されている、例えば、実店舗の売り場又はバックヤードの棚を含む、予め定められた元の場所へ戻すことが、例えば、品質管理上の理由から、許されていない。また、本変形例では、元の場所と異なる場所であり、かつ、配送された在庫を保管するための場所が実店舗に存在しない。しかし、販促通知を確認したユーザによって、配送された余剰個数「2個」の在庫が購入されれば、これらの在庫を陳列又は保管するための場所が実店舗に無くとも、実店舗の従業員がこれらの在庫を廃棄する必要が無くなる。このため、情報処理装置100は、商品の廃棄を抑制できる。
<実施例2の変形例6>
実施例2の変形例5では、実店舗に在る表示装置200へ販促通知が送信されると説明したが、これに限定される訳ではない。本変形例では、実店舗に居るユーザU2の端末装置800へ販促通知が送信される。
本変形例では、ユーザU2が使用する端末装置800のCPUは、起動すると、予め定められた時間間隔で、不図示の位置送信処理を実行する。位置送信処理の実行を開始すると、端末装置800のCPUは、端末装置800のフラッシュメモリが記憶するユーザU2のユーザID「U2」を取得し、位置計測回路が出力する信号に基づいて、端末装置800の位置を緯度、経度、及び、高度で表す位置情報を取得する。次に、CPUは、端末装置800を携帯するユーザU2のユーザID「U2」と、端末装置800の位置情報と、を、情報処理装置100を宛先としてデータ通信回路へ出力してから、位置送信処理の実行を終了する。その後、端末装置800のデータ通信回路は、ユーザID「U2」と位置情報とを情報処理装置100へ送信する。ユーザU3が使用する端末装置900は、同様に、予め定められた時間間隔で、ユーザU3のユーザID「U3」と、端末装置900の位置情報と、を、情報処理装置100へ送信する。
本変形例では、情報処理装置100の情報記憶部190は、図5に示したユーザテーブルに代えて、不図示のユーザテーブルを記憶している。ユーザテーブルには、複数のレコードが予め保存されている。ユーザテーブルの各レコードには、ユーザを識別するユーザIDと、当該ユーザのパスワードを表す情報と、当該ユーザの配送先の位置を表す位置情報と、当該ユーザの支払情報と、当該ユーザの位置を緯度、経度、及び、高度で表す位置情報と、が予め対応付けられて保存されている。
情報処理装置100のデータ通信回路104aが、端末装置800から、ユーザU2のユーザID「U2」と、ユーザU2が使用する端末装置800の位置を表す位置情報と、を受信すると、情報処理装置100の取得部110は、データ通信回路104aからこれらの情報を取得する。次に、制御部130は、取得された位置情報を、取得されたユーザID「U2」で識別されるユーザU2の位置を表す位置情報と判別する。その後、制御部130は、不図示のユーザテーブルにおいて、取得されたユーザID「U2」に対応付けられている位置情報を、ユーザU2の位置を表す位置情報に変更する。また、情報処理装置100は、端末装置900から、ユーザID「U3」と位置情報とを受信すると、不図示のユーザテーブルにおいて、ユーザID「U3」に対応付けられている位置情報を、受信された位置情報に変更する。
本変形例では、図29のステップS106dにおいて、情報処理装置100の制御部130は、実店舗に居るユーザU2が携帯する端末装置800を宛先として、販促通知をデータ通信回路104aへ出力する。このために、情報処理装置100の取得部110は、情報記憶部190が予め記憶する実店舗の位置Sを表す情報と、予め定められた距離を表す情報と、を取得する。好適な距離は、当業者が実験により定めることができる。
次に、情報処理装置100の取得部110は、不図示のユーザテーブルにおいて、ユーザU1のユーザID「U1」と異なるユーザIDであり、かつ、取得された情報で表される位置Sからの距離が、予め定められた距離以下の位置を表す位置情報と対応付けられたユーザIDを1又は複数取得する。これにより、余剰個数「2個」の在庫を受け取らなかったユーザU1と異なるユーザであり、かつ、実店舗の位置Sからの距離が予め定められた距離以下の位置に居るユーザのユーザIDが1又は複数取得される。
本変形例では、ユーザU2のユーザID「U2」が取得されるが、ユーザU3のユーザID「U3」が取得されない場合を具体例として挙げて以下の説明を行う。このため、情報処理装置100の制御部130は、取得されたユーザID「U2」で識別されるユーザU2が、実店舗に居ると判別する。これに対して、制御部130は、ユーザID「U3」が取得されなかったため、ユーザU3が、実店舗に居ないと判別する。
このため、情報処理装置100の制御部130は、ユーザU2が携帯する端末装置800を宛先として、販促通知をデータ通信回路104aへ出力する。これに対して、制御部130は、ユーザU3が携帯する端末装置900を宛先として、販促通知をデータ通信回路104aへ出力しない。このため、情報処理装置100のデータ通信回路104aは、販促通知を、端末装置800へ送信するが、端末装置900へ送信しない。
本発明の実施例1及び2、実施例1の変形例1から24、並びに、実施例2の変形例1から6は、互いに組み合わせることができる。
実施例1及び2、実施例1の変形例1から23、並びに、実施例2の変形例1から6のいずれかに係る機能を実現するための構成を備えた情報処理装置100、並びに、実施例1の変形例24に係る機能を実現するための構成を備えた情報処理装置690として提供できることはもとより、複数の装置で構成されるシステムであって、本発明の実施例1及び2、実施例1の変形例1から24、並びに、実施例2の変形例1から6のいずれかに係る機能を実現するための構成をシステム全体として備えたシステムとして提供することもできる。
実施例1及び2、実施例1の変形例1から23、並びに、実施例2の変形例1から6のいずれかに係る機能を実現するための構成を予め備えた情報処理装置100として提供できる。また、プログラムの適用により、既存の情報処理装置を実施例1及び2、実施例1の変形例1から23、並びに、実施例2の変形例1から6のいずれかに係る情報処理装置100として機能させることもできる。すなわち、実施例1及び2、実施例1の変形例1から23、並びに、実施例2の変形例1から6のいずれかで例示した情報処理装置100による各機能構成を実現させるためのプログラムを、既存の情報処理装置を制御するコンピュータ(CPUなど)が実行することで、実施例1及び2、実施例1の変形例1から23、並びに、実施例2の変形例1から6のいずれかに係る情報処理装置100として機能させることができる。
本発明の実施例1の変形例24に係る機能を実現するための構成を予め備えた情報処理装置690として提供できる。また、プログラムの適用により、既存の情報処理装置を実施例1の変形例24に係る情報処理装置690として機能させることもできる。すなわち、上記実施例1の変形例24で例示した情報処理装置690による各機能構成を実現させるためのプログラムを、既存の情報処理装置を制御するコンピュータ(CPUなど)が実行することで、実施例1の変形例24に係る情報処理装置690として機能させることができる。
このようなプログラムの配布方法は任意であり、例えば、メモリカード、CD(Compact Disc)-ROM、又は、DVD(Digital Versatile Disc)-ROMなどの記録媒体に収納して配布できる他、インタネットなどの通信媒体を介して配布することもできる。
本発明に係る方法は、実施例1及び2、実施例1の変形例1から23、並びに、実施例2の変形例1から6のいずれかに係る情報処理装置100、並びに、実施例1の変形例24に係る情報処理装置690を用いて実施できる。また、本発明に係る方法は、実施例1及び2、実施例1の変形例1から24、並びに、実施例2の変形例1から6のいずれかに係る情報処理システム1を用いて実施できる。
また、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
(付記)
(付記1)
在庫毎に質と量との少なくとも1つが異なる商品が注文された場合、注文された個数である注文個数よりも多い積載個数、注文された前記商品である注文商品の在庫を移動機に積載させる指示を行う指示部、
を備えることを特徴とする情報処理装置。
(付記2)
前記指示部は、前記積載個数の在庫を前記移動機に積載させる前記指示を行うことで、前記積載個数の在庫から、前記注文個数の在庫を受取人が選択可能にする、
ことを特徴とする付記1に記載の情報処理装置。
(付記3)
前記注文商品は、質と量との前記少なくとも1つについて表示形態が同一のウェブ頁を用いて注文された商品である、
ことを特徴とする付記1又は2に記載の情報処理装置。
(付記4)
前記注文商品を識別する商品識別情報と、前記注文個数を表す情報と、を含み、かつ、前記注文個数の前記注文商品の注文を受け付けるように求める注文受付要求を取得し、
商品を識別する商品識別情報と、当該商品の複数の在庫から2つの在庫を抽出する場合、抽出される前記2つの在庫の量と質との前記少なくとも1つが互いに異なる確率が予め定められる閾値よりも高いか否かを表す情報と、を対応付けて記憶する記憶部から、取得された前記注文受付要求に含まれる前記商品識別情報に対応付けられた前記情報を取得する、
取得部、をさらに備え、
前記指示部は、
取得された前記情報が前記閾値よりも前記確率が高いことを表すと、在庫毎に質と量との前記少なくとも1つが異なる前記商品が注文されたと判別し、
前記注文受付要求で表される前記注文個数よりも多い前記積載個数、前記注文受付要求で識別される前記注文商品の前記在庫を前記移動機に積載させる前記指示を行う、
ことを特徴とする付記1から3のいずれか一つに記載の情報処理装置。
(付記5)
前記指示部は、
前記移動機が積載可能な在庫の数と、前記注文個数と、に基づいて、前記移動機に前記注文個数の在庫を積載させた場合に、前記移動機がさらに積載可能な前記注文商品の在庫の数を算出し、
前記積載個数を、算出された前記数以下の数だけ、前記注文個数よりも多い数に設定する、
ことを特徴とする付記1から4のいずれか一つに記載の情報処理装置。
(付記6)
前記移動機が前記注文商品の配送先に到着するよりも前に、前記積載個数の在庫を撮像することで得られた画像を表す画像情報を、注文者が使用する端末装置へ送信する通信部をさらに備える、
ことを特徴とする付記1から5のいずれか一つに記載の情報処理装置。
(付記7)
前記通信部は、前記積載個数の在庫を前記移動機が積載する場合、前記積載個数の在庫の内で、少なくとも2つの在庫の価格が互いに異なると、前記積載個数の在庫の最低価格を表す情報と、最高価格を表す情報と、を、前記注文者の前記端末装置へ送信する、
ことを特徴とする付記6に記載の情報処理装置。
(付記8)
付記6又は7に記載の前記情報処理装置と前記移動機とを備え、
前記移動機は、第1サブボックスと、第2サブボックスと、前記第1サブボックスの内部を撮像範囲に含むが、前記第2サブボックスの内部を撮像範囲に含まない撮像装置と、を有するボックスを備え、
前記情報処理装置の前記指示部は、前記注文個数よりも多い前記積載個数、前記注文商品の前記在庫を前記移動機の前記第1サブボックスに積載させる前記指示を行い、
前記情報処理装置の前記通信部は、前記積載個数の前記在庫を前記撮像装置が撮像することで得られた前記画像を表す前記画像情報を送信する、
ことを特徴とするシステム。
(付記9)
付記6又は7に記載の前記情報処理装置と前記移動機とを備え、
前記在庫の量は、前記在庫の重量を含み、
前記移動機は、格納される1又は複数の在庫の重量を計測する計測装置を備えたボックスを備え、
前記情報処理装置の前記通信部は、
前記注文個数の在庫の受け渡し前に、前記計測装置が計測した重量を表す重量情報を受信し、
前記注文個数の在庫の受け渡し後に、前記計測装置が計測した重量を表す重量情報を受信し、
前記情報処理装置は、前記受け渡し前に受信された前記重量情報で表される前記重量と、前記受け渡し後に受信された前記重量情報で表される前記重量と、前記注文商品の単位重量当たりの価格と、に基づいて、受け渡された前記注文個数の在庫の合計価格を特定する特定部、をさらに備える、
ことを特徴とするシステム。
(付記10)
付記6又は7に記載の前記情報処理装置と前記移動機とを備え、
前記在庫には、前記在庫の価格又は重量を表すコードが記載されており、
前記移動機は、格納される1又は複数の在庫を撮像する撮像装置を備えたボックスを備え、
前記情報処理装置の前記通信部は、
前記注文個数の在庫の受け渡し前に、前記撮像装置が撮像により得た前記画像を表す前記画像情報を受信し、
前記注文個数の在庫の受け渡し後に、前記撮像装置が撮像により得た画像を表す情報を受信し、
前記情報処理装置は、
前記コードが前記価格を表す場合、前記受け渡し前に受信された前記画像情報で表される前記画像から検出される前記コードである第1コードと、前記受け渡し後に受信された前記画像情報で表される前記画像から検出される前記コードである第2コードと、に基づいて、受け渡された前記注文個数の在庫の合計価格を特定し、
前記コードが前記重量を表す場合、前記第1コードと、前記第2コードと、単位重量当たりの前記注文商品の価格と、に基づいて、前記合計価格を特定する、
特定部、をさらに備える、
ことを特徴とするシステム。
(付記11)
付記5に記載の前記情報処理装置と前記移動機とを備え、
前記在庫の量は、前記在庫の重量を含み、
前記移動機は、格納される在庫の重量を計測する計測装置、及び、格納される前記在庫を撮像する撮像装置の少なくとも1つを備えたボックスを複数備え、
前記情報処理装置は、
前記注文商品の前記在庫を格納する前記積載個数のボックスがそれぞれ備える前記計測装置が計測した重量を表す重量情報、及び、前記撮像装置が撮像により得た画像を表す画像情報の少なくとも1つを受信する通信部と、
受信された前記積載個数の重量情報と前記積載個数の画像情報との少なくとも1つに基づいて、前記積載個数の在庫の内で、重量及び質の前記少なくとも1つが互いに同じ複数の在庫の特定を試行する特定部と、
をさらに備え、
前記情報処理装置の前記指示部は、前記複数の在庫が特定されると、特定された前記複数の在庫の少なくとも1つの入れ替えを指示する、
ことを特徴とするシステム。
(付記12)
前記情報処理装置の前記通信部は、前記入れ替え後に、前記注文商品の前記在庫を格納する前記積載個数のボックスがそれぞれ備える前記計測装置が計測した重量を表す重量情報、及び、前記撮像装置が撮像により得た画像を表す画像情報の少なくとも1つを再度受信し、
前記情報処理装置の前記特定部は、前記入れ替え後に受信された前記積載個数の重量情報と前記積載個数の画像情報との少なくとも1つに基づいて、重量及び質の前記少なくとも1つが互いに同じ複数の在庫の特定を再度試行し、
前記情報処理装置は、前記入れ替え後に特定された前記複数の在庫の数が、前記入れ替え前に特定された前記複数の在庫の数よりも少ないと、前記積載個数の在庫を積載した前記移動機を配送先へ移動させる制御を行う制御部、をさらに備える、
ことを特徴とする付記11に記載のシステム。
(付記13)
前記情報処理装置の前記通信部は、
前記積載個数の在庫が前記移動機に積載されると、前記注文商品の前記在庫をそれぞれ格納する前記積載個数のボックスの施錠を命じる施錠命令を前記移動機へ送信し、
前記移動機が前記配送先に到着するよりも前に、受信された前記積載個数の重量情報、及び、前記積載個数の画像情報の前記少なくとも1つを注文者が使用する端末装置へ送信し、
前記端末装置から、前記注文者によって選択された前記注文個数の在庫をそれぞれ格納するボックスを識別するボックス識別情報を受信し、
前記移動機が前記配送先に到着すると、受信された前記注文個数のボックス識別情報でそれぞれ識別される前記ボックスの解錠を命じる解錠命令を前記移動機へ送信する、
ことを特徴とする付記12に記載のシステム。
(付記14)
情報処理装置又はシステムが実行する方法であって、
前記情報処理装置又は前記システムが、在庫毎に質と量との少なくとも1つが異なる商品が注文された場合、注文された個数である注文個数よりも多い積載個数、注文された前記商品である注文商品の在庫を移動機に積載させる指示を行う指示ステップ、
を有することを特徴とする方法。
1:情報処理システム 100、590、690:情報処理装置 101、691:CPU 102、692:RAM 103a、693a:ROM 103b:ハードディスク 104a、694a:データ通信回路 105a、695a:ビデオカード 105b、695b:ディスプレイパネル 105c、695c:入力装置 110:取得部 120:指示部 130:制御部 140:特定部 190:情報記憶部 200:表示装置 500、600:移動機 501から504:プロペラアーム 511から514:プロペラ 520、620:格納庫 521、621から625:格納ボックス 541、641:LiDARセンサ 550:フック 551:本体部 551a、651b:端部 551c:クラウン部 552:ピン 553:連結部材 553a、653b:連結点 554:揺動部材 555:モータ 555a:シャフト 601、602:車輪 610:車台 621a:扉 621b:扉枠 621c:デッドボルト 621d:ストライク 693b:フラッシュメモリ 696:位置計測回路 698:入出力ポート 699:駆動回路 700から900:端末装置 A:梱包材 CR、CR1、CR2:撮像装置 CW1、CW2:計測装置 DB:端部間の距離 DH:受止穴の深さ G:リング L:紐 IN:インタネット PF:棚板 PK:背板 PM:底板 PP:間仕切板 PS1、PS2:側板 PT:天板 SN1、SN2:第1サブボックス SU:第2サブボックス TR:リングの抜出方向の幅

Claims (14)

  1. 在庫毎に質と量との少なくとも1つが異なる商品が注文された場合、注文された個数である注文個数よりも多い積載個数、注文された前記商品である注文商品の在庫を移動機に積載させる指示を行う指示部、
    を備えることを特徴とする情報処理装置。
  2. 前記指示部は、前記積載個数の在庫を前記移動機に積載させる前記指示を行うことで、前記積載個数の在庫から、前記注文個数の在庫を受取人が選択可能にする、
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記注文商品は、質と量との前記少なくとも1つについて表示形態が同一のウェブ頁を用いて注文された商品である、
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記注文商品を識別する商品識別情報と、前記注文個数を表す情報と、を含み、かつ、前記注文個数の前記注文商品の注文を受け付けるように求める注文受付要求を取得し、
    商品を識別する商品識別情報と、当該商品の複数の在庫から2つの在庫を抽出する場合、抽出される前記2つの在庫の量と質との前記少なくとも1つが互いに異なる確率が予め定められる閾値よりも高いか否かを表す情報と、を対応付けて記憶する記憶部から、取得された前記注文受付要求に含まれる前記商品識別情報に対応付けられた前記情報を取得する、
    取得部、をさらに備え、
    前記指示部は、
    取得された前記情報が前記閾値よりも前記確率が高いことを表すと、在庫毎に質と量との前記少なくとも1つが異なる前記商品が注文されたと判別し、
    前記注文受付要求で表される前記注文個数よりも多い前記積載個数、前記注文受付要求で識別される前記注文商品の前記在庫を前記移動機に積載させる前記指示を行う、
    ことを特徴とする請求項1から3のいずれか一項に記載の情報処理装置。
  5. 前記指示部は、
    前記移動機が積載可能な在庫の数と、前記注文個数と、に基づいて、前記移動機に前記注文個数の在庫を積載させた場合に、前記移動機がさらに積載可能な前記注文商品の在庫の数を算出し、
    前記積載個数を、算出された前記数以下の数だけ、前記注文個数よりも多い数に設定する、
    ことを特徴とする請求項1から4のいずれか一項に記載の情報処理装置。
  6. 前記移動機が前記注文商品の配送先に到着するよりも前に、前記積載個数の在庫を撮像することで得られた画像を表す画像情報を、注文者が使用する端末装置へ送信する通信部をさらに備える、
    ことを特徴とする請求項1から5のいずれか一項に記載の情報処理装置。
  7. 前記通信部は、前記積載個数の在庫を前記移動機が積載する場合、前記積載個数の在庫の内で、少なくとも2つの在庫の価格が互いに異なると、前記積載個数の在庫の最低価格を表す情報と、最高価格を表す情報と、を、前記注文者の前記端末装置へ送信する、
    ことを特徴とする請求項6に記載の情報処理装置。
  8. 請求項6又は7に記載の前記情報処理装置と前記移動機とを備え、
    前記移動機は、第1サブボックスと、第2サブボックスと、前記第1サブボックスの内部を撮像範囲に含むが、前記第2サブボックスの内部を撮像範囲に含まない撮像装置と、を有するボックスを備え、
    前記情報処理装置の前記指示部は、前記注文個数よりも多い前記積載個数、前記注文商品の前記在庫を前記移動機の前記第1サブボックスに積載させる前記指示を行い、
    前記情報処理装置の前記通信部は、前記積載個数の前記在庫を前記撮像装置が撮像することで得られた前記画像を表す前記画像情報を送信する、
    ことを特徴とするシステム。
  9. 請求項6又は7に記載の前記情報処理装置と前記移動機とを備え、
    前記在庫の量は、前記在庫の重量を含み、
    前記移動機は、格納される1又は複数の在庫の重量を計測する計測装置を備えたボックスを備え、
    前記情報処理装置の前記通信部は、
    前記注文個数の在庫の受け渡し前に、前記計測装置が計測した重量を表す重量情報を受信し、
    前記注文個数の在庫の受け渡し後に、前記計測装置が計測した重量を表す重量情報を受信し、
    前記情報処理装置は、前記受け渡し前に受信された前記重量情報で表される前記重量と、前記受け渡し後に受信された前記重量情報で表される前記重量と、前記注文商品の単位重量当たりの価格と、に基づいて、受け渡された前記注文個数の在庫の合計価格を特定する特定部、をさらに備える、
    ことを特徴とするシステム。
  10. 請求項6又は7に記載の前記情報処理装置と前記移動機とを備え、
    前記在庫には、前記在庫の価格又は重量を表すコードが記載されており、
    前記移動機は、格納される1又は複数の在庫を撮像する撮像装置を備えたボックスを備え、
    前記情報処理装置の前記通信部は、
    前記注文個数の在庫の受け渡し前に、前記撮像装置が撮像により得た前記画像を表す前記画像情報を受信し、
    前記注文個数の在庫の受け渡し後に、前記撮像装置が撮像により得た画像を表す情報を受信し、
    前記情報処理装置は、
    前記コードが前記価格を表す場合、前記受け渡し前に受信された前記画像情報で表される前記画像から検出される前記コードである第1コードと、前記受け渡し後に受信された前記画像情報で表される前記画像から検出される前記コードである第2コードと、に基づいて、受け渡された前記注文個数の在庫の合計価格を特定し、
    前記コードが前記重量を表す場合、前記第1コードと、前記第2コードと、単位重量当たりの前記注文商品の価格と、に基づいて、前記合計価格を特定する、
    特定部、をさらに備える、
    ことを特徴とするシステム。
  11. 請求項5に記載の前記情報処理装置と前記移動機とを備え、
    前記在庫の量は、前記在庫の重量を含み、
    前記移動機は、格納される在庫の重量を計測する計測装置、及び、格納される前記在庫を撮像する撮像装置の少なくとも1つを備えたボックスを複数備え、
    前記情報処理装置は、
    前記注文商品の前記在庫を格納する前記積載個数のボックスがそれぞれ備える前記計測装置が計測した重量を表す重量情報、及び、前記撮像装置が撮像により得た画像を表す画像情報の少なくとも1つを受信する通信部と、
    受信された前記積載個数の重量情報と前記積載個数の画像情報との少なくとも1つに基づいて、前記積載個数の在庫の内で、重量及び質の前記少なくとも1つが互いに同じ複数の在庫の特定を試行する特定部と、
    をさらに備え、
    前記情報処理装置の前記指示部は、前記複数の在庫が特定されると、特定された前記複数の在庫の少なくとも1つの入れ替えを指示する、
    ことを特徴とするシステム。
  12. 前記情報処理装置の前記通信部は、前記入れ替え後に、前記注文商品の前記在庫を格納する前記積載個数のボックスがそれぞれ備える前記計測装置が計測した重量を表す重量情報、及び、前記撮像装置が撮像により得た画像を表す画像情報の少なくとも1つを再度受信し、
    前記情報処理装置の前記特定部は、前記入れ替え後に受信された前記積載個数の重量情報と前記積載個数の画像情報との少なくとも1つに基づいて、重量及び質の前記少なくとも1つが互いに同じ複数の在庫の特定を再度試行し、
    前記情報処理装置は、前記入れ替え後に特定された前記複数の在庫の数が、前記入れ替え前に特定された前記複数の在庫の数よりも少ないと、前記積載個数の在庫を積載した前記移動機を配送先へ移動させる制御を行う制御部、をさらに備える、
    ことを特徴とする請求項11に記載のシステム。
  13. 前記情報処理装置の前記通信部は、
    前記積載個数の在庫が前記移動機に積載されると、前記注文商品の前記在庫をそれぞれ格納する前記積載個数のボックスの施錠を命じる施錠命令を前記移動機へ送信し、
    前記移動機が前記配送先に到着するよりも前に、受信された前記積載個数の重量情報、及び、前記積載個数の画像情報の前記少なくとも1つを注文者が使用する端末装置へ送信し、
    前記端末装置から、前記注文者によって選択された前記注文個数の在庫をそれぞれ格納するボックスを識別するボックス識別情報を受信し、
    前記移動機が前記配送先に到着すると、受信された前記注文個数のボックス識別情報でそれぞれ識別される前記ボックスの解錠を命じる解錠命令を前記移動機へ送信する、
    ことを特徴とする請求項12に記載のシステム。
  14. 情報処理装置又はシステムが実行する方法であって、
    前記情報処理装置又は前記システムが、在庫毎に質と量との少なくとも1つが異なる商品が注文された場合、注文された個数である注文個数よりも多い積載個数、注文された前記商品である注文商品の在庫を移動機に積載させる指示を行う指示ステップ、
    を有することを特徴とする方法。
JP2021200682A 2021-12-10 2021-12-10 情報処理装置、システム、及び、方法 Active JP7274558B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021200682A JP7274558B1 (ja) 2021-12-10 2021-12-10 情報処理装置、システム、及び、方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021200682A JP7274558B1 (ja) 2021-12-10 2021-12-10 情報処理装置、システム、及び、方法

Publications (2)

Publication Number Publication Date
JP7274558B1 true JP7274558B1 (ja) 2023-05-16
JP2023086281A JP2023086281A (ja) 2023-06-22

Family

ID=86327306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021200682A Active JP7274558B1 (ja) 2021-12-10 2021-12-10 情報処理装置、システム、及び、方法

Country Status (1)

Country Link
JP (1) JP7274558B1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111461598A (zh) 2020-03-30 2020-07-28 惠州市华达通气体制造股份有限公司 货物运输方法及装置
JP2020191073A (ja) 2019-05-17 2020-11-26 株式会社バローホールディングス 商品提供システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020191073A (ja) 2019-05-17 2020-11-26 株式会社バローホールディングス 商品提供システム
CN111461598A (zh) 2020-03-30 2020-07-28 惠州市华达通气体制造股份有限公司 货物运输方法及装置

Also Published As

Publication number Publication date
JP2023086281A (ja) 2023-06-22

Similar Documents

Publication Publication Date Title
US10289989B2 (en) Drive-thru / point-of-sale automated transaction technologies and apparatus
KR102537342B1 (ko) 자동화된 키오스크를 이용하는 실시간 리스크 정보활용 반품 아이템 수거를 위한 컴퓨터 구현 시스템 및 방법
EP3829953B1 (en) Smart shopping trolley
US10783478B2 (en) Unmanned aerial vehicle delivery system
EP3746967B1 (fr) Méthodes et systèmes d'assistance a l'achat en un point de vente physique
JP2016527585A (ja) 自動回収装置
CA2504285A1 (en) Alternate delivery location methods and systems
US10332183B1 (en) Fulfilling items to users
MX2014011692A (es) Puntos de retiro.
US10157362B1 (en) Systems and methods for delivering items
BR112021014213A2 (pt) Método e sistema para aprimorar desempenho de operador por gamificação de robô
US20190287113A1 (en) Customized score-based basket approval system
JP6977726B2 (ja) 在庫管理装置、顧客端末、商品販売システムおよび在庫管理方法
US11279559B1 (en) Intelligent shelves for automated distribution of products
CN108922017B (zh) 一种无人自动贩卖商店及其退货方法
JP7274558B1 (ja) 情報処理装置、システム、及び、方法
JP7203143B2 (ja) 情報処理システム、情報処理装置、及び、方法
US20230174308A1 (en) Apparatus, system, and method for a drive-through grocery service
KR101683830B1 (ko) 상점 위치 안내 방법 및 이를 이용한 장치
JP7203797B2 (ja) 情報処理システム、装置、及び、方法
JP7221361B1 (ja) 情報処理装置、システム、及び、方法
JP7305724B2 (ja) 情報処理装置、システム、及び、方法
JP7242966B1 (ja) 制御装置、システム、及び、方法
JP7274545B2 (ja) 情報処理装置、システム、及び、方法
JP7071482B1 (ja) 情報処理装置、システム、及び、方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230501

R150 Certificate of patent or registration of utility model

Ref document number: 7274558

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150