以下、購入する商品が決まっていない場合でも、商業施設を訪れた客の目的から効率の良いルートを検索できるルート検索装置の実施形態について、図面を用いて説明する。
はじめに、本実施形態においては、デパート、ショッピングセンター等の商業施設だけでなく、商店街、ショッピングモール等の商業地域も、商業施設の概念に含み得る。また、ショッピングセンター、商店街、ショッピングモール等に小売業として出店している店舗だけでなく、デパートなどの商業施設に展開されている業種別の売場も店舗の概念に含み得る。
[第1の実施形態]
図1は、第1の実施形態のシステム構成を示す模式図である。第1の実施形態は、ユーザ端末1と、店舗毎の入退店検出システム2と、ルート案内サービスを行うためのサーバシステム3と、ネットワーク4とで構成される。ネットワーク4は、典型的にはインターネット若しくはインターネットVPN(Virtual Private Network)である。ネットワーク4は、モバイル通信網等を含んでもよい。ネットワーク4には、ユーザ端末1と無線通信が可能なアクセスポイント41が接続されている。アクセスポイント41は、商業施設への出入口、及びその施設内または施設へと通じる通路等に配置されている。
ユーザ端末1は、商業施設においてルート案内サービスを受ける施設利用者、いわゆる客が携帯して使用するものである。ユーザ端末1は、表示デバイスと入力デバイスとを備え、無線ユニットを搭載した携帯型の情報端末である。表示デバイスと入力デバイスとは、それぞれ別体のデバイスであってもよいし、一体のデバイス、例えばタッチパネルであってもよい。この種のユーザ端末1としては、例えばスマートフォン、タブレット端末、ノート型パソコン等が用いられる。
ユーザ端末1のメモリ11には、ユーザIDとルート案内プログラムとが記憶されている。ユーザIDは、当該ユーザ端末1を個々に識別するためにユーザ端末1毎に設定された一意のコードである。ユーザIDは、当該ユーザ端末1を使用する客毎に割り当てられた会員コード、電話番号等であってもよい。
ルート案内プログラムは、商業施設でのルート案内サービスを受けるためのソフトウェアである。客は、ユーザ端末1にルート案内プログラムをインストールすることで、サーバシステム3からルート案内サービスを受けることができる。ルート案内プログラムをユーザ端末1にインストールする方法は、特に限定されるものではない。スマートフォン等の情報端末にソフトウェアをインストールする従来の方法をそのまま利用することができる。
商業施設に出向いた客がルート案内サービスを受ける場合、先ず、ユーザ端末1を操作してルート案内プログラムを起動する。ルート案内プログラムが起動すると、ユーザ端末1では、ユーザIDを含むデータ信号が周期的に発信される。このデータ信号がアクセスポイント41で受信されると、ユーザ端末1はネットワーク4と接続され、サーバシステム3との通信回線が確立される。サーバシステム3との通信回線が確立されることにより、ユーザ端末1では、ユーザである客の目的に応じたルート検索が可能となる。
入退店検出システム2は、ルート案内プログラムが起動したユーザ端末1を携帯する客の入店と退店とを検出するためのシステムであって、商業施設に出店している各店舗にそれぞれ設けられている。入退店検出システム2は、有線通信又は無線通信を介してネットワーク4と接続される。
図2は、入退店検出システム2の概略構成を示すブロック図である。図2に示すように入退店検出システム2は、第1センサ21と、第2センサ22と、制御装置23と、通信ユニット24とを備える。第1センサ21及び第2センサ22は、いずれもユーザ端末1から発信されるユーザIDのデータ信号を受信可能な機器である。第1センサ21及び第2センサ22は、ユーザIDのデータ信号を一定以上の電波強度で受信すると、そのユーザIDを含む検知信号を制御装置23へと出力する。
第1センサ21は、店舗の出入口を通過する客のユーザ端末1から発信されるデータ信号を一定以上の電波強度で受信し得るように、出入口の近傍に設けられる。第2センサ22は、出入口から店内に入った客のユーザ端末1から発信されるデータ信号を一定以上の電波強度で受信し得るように、第1センサ21よりも店内側に設けられる。したがって、ユーザ端末1を携帯する客が出入口から入店すると、そのユーザ端末1から発信されるデータ信号は、先ず第1センサ21で受信され、続いて第2センサ22で受信される。一方、客が出入口から退店した際には、その客が携帯するユーザ端末1のデータ信号は、先ず第2センサ22で受信され、続いて第1センサ21で受信される。
第1センサ21は、一定以上の電波強度でデータ信号を受信すると、制御装置23に検知信号を出力する。検知信号には、第1センサ21で受信したデータ信号から得られるユーザIDが含まれる。第2センサ22は、一定以上の電波強度でデータ信号を受信すると、制御装置23に検知信号を出力する。検知信号には、第2センサ22で受信したデータ信号から得られるユーザIDが含まれる。
図3は、制御装置23の動作手順を示す流れ図である。図3に示すように、制御装置23は、ACT101として第1センサ21から検知信号を受信したか否かを確認する。検知信号を受信していない場合、制御装置23は、ACT101においてNOと判定し、ACT102へと進む。制御装置23は、ACT102として第2センサ22から検知信号を受信したか否かを確認する。検知信号を受信していない場合、制御装置23は、ACT102においてNOと判定し、ACT101へと戻る。ここに、制御装置23は、ACT101及びACT102において第1センサ21から検知信号を受信するか第2センサ22から検知信号を受信するのを待ち受ける。
ACT101及びACT102の待ち受け状態において、制御装置23は、第1センサ21から検知信号を受信するとACT101においてYESと判定し、ACT103へと進む。制御装置23は、ACT103としてその検知信号からユーザIDを取得する。そして制御装置23は、ACT104として検知信号から取得したユーザIDと同じユーザIDを制御装置23内のメモリで記憶しているか否かを確認する。同じユーザIDを記憶していない場合、制御装置23は、ACT104においてNOと判定し、ACT105へと進む。制御装置23は、ACT105として検知信号から取得したユーザIDをメモリで一定時間記憶する。ここで、一定時間とは、出入口から入店した客が第1センサ21の検知エリアを通過し、続いて第2センサ22の検知エリアを通過するのに要する時間よりも長い時間、例えば10秒である。
制御装置23は、検知信号から取得したユーザIDと同じユーザIDをメモリで記憶している場合には、ACT104においてYESと判定し、ACT106へと進む。制御装置23は、ACT106として退店コマンドを出力するように通信ユニット24を制御する。この制御により、通信ユニット24は、ネットワーク4を介してサーバシステム3宛に退店コマンドを出力する。退店コマンドには、ACT103の処理で取得したユーザIDが含まれる。
ACT101及びACT102の待ち受け状態において、制御装置23は、第2センサ22から検知信号を受信するとACT102においてYESと判定し、ACT107へと進む。制御装置23は、ACT107としてその検知信号からユーザIDを取得する。そして制御装置23は、ACT108として検知信号から取得したユーザIDと同じユーザIDを制御装置23内のメモリで記憶しているか否かを確認する。同じユーザIDを記憶していない場合、制御装置23は、ACT108においてNOと判定し、ACT109へと進む。制御装置23は、ACT109として検知信号から受信したユーザIDをメモリで一定時間記憶する。ここで、一定時間とは、出入口から退店する客が第2センサ22の検知エリアを通過し、続いて第1センサ21の検知エリアを通過するのに要する時間よりも長い時間、例えば10秒である。
制御装置23は、検知信号に含まれるユーザIDと同じユーザIDをメモリで記憶している場合には、ACT108においてYESと判定し、ACT110へと進む。制御装置23は、ACT110として入店コマンドを出力するように通信ユニット24を制御する。この制御により、通信ユニット24は、ネットワーク4を介してサーバシステム3宛に入店コマンドを出力する。入店コマンドには、ACT107の処理で取得したユーザIDが含まれる。
このように、制御装置23は、第1センサ21及び第2センサ22からの検知信号により、客の入店又は退店を検出する。すなわち制御装置23は、第1センサ21からユーザIDを含む検知信号を受信し、そのユーザIDをメモリで記憶した後、一定時間以内に第2センサ22から同じユーザIDを含む検知信号を受信すると、当該ユーザIDで識別される客が入店したことを検出する。そして制御装置23は、サーバシステム3に入店コマンドを出力するように通信ユニット24を制御する。また制御装置23は、第2センサ22からユーザIDを含む検知信号を受信し、そのユーザIDをメモリで記憶した後、一定時間以内に第1センサ21から同じユーザIDを含む検知信号を受信すると、当該ユーザIDで識別される客が退店したことを検出する。そして制御装置23は、サーバシステム3に退店コマンドを出力するように通信ユニット24を制御する。
通信ユニット24は、制御装置23の制御により、ネットワーク4に接続されたサーバシステム3と所定の通信プロトコルに従いデータ通信を行って、入店コマンド又は出店コマンドを送信する。入店コマンド又は出店コマンドには、第1センサ21又は第2センサ22から受信した検知信号のユーザIDが含まれる。
なお、入口と出口とが区別された店舗の場合には、入口に第1センサ21を設け、出口に第2センサ22を設ければよい。この場合、制御装置23は、第1センサ21からの検知信号により客の入店を検知し、第2センサ22からの検知信号により客の退店を検知する。通信ユニット24は、前記と同様に、入店コマンド又は出店コマンドを送信する。
図1の説明に戻る。
サーバシステム3は、店舗管理サーバ31と、ユーザ管理サーバ32と、ルート検索サーバ33とを含む。店舗管理サーバ31と、ユーザ管理サーバ32と、ルート検索サーバ33は、それぞれネットワーク4に接続されている。
店舗管理サーバ31は、商業施設に出店している各店舗のデータ管理に特化したサーバ用コンピュータである。店舗管理サーバ31は、店舗管理データベース34を備える。店舗管理データベース34は、店舗管理サーバ31が内蔵する記憶装置に形成されていてもよいし、店舗管理サーバ31の外部に接続された記憶装置に形成されていてもよい。
店舗管理データベース34は、店舗管理レコード341(図4を参照)を保存する。店舗管理レコード341は、商業施設に出店した店舗毎に作成されて、店舗管理データベース34に保存される。店舗管理レコード341の主要なデータ構造を図4の模式図で表す。図4に示すように、店舗管理レコード341は、店舗ID、出店場所、業態、業種、客層別平均滞在時間等のデータ項目を含む。
店舗IDは、商業施設に出店している各店舗を個々に識別するために店舗毎に割り当てられた一意のコードである。出店場所は、商業施設を構成する各店舗と共用施設のレイアウトを示したマップデータ上における当該店舗の所在地である。業態は、各店舗を販売方法、経営方針などによって分類する項目である。業種は、各店舗を取扱商品の種類によって分類する項目である。客層別平均滞在時間は、性別と年齢層とで分類される客層別に、当該店舗に入店してから退店するまでの滞在時間の平均値である。客層別平均滞在時間は、過去に蓄積された多くの客層別平均滞在時間を基に算出され、店舗管理レコード341に組み入れられている。
ユーザ管理サーバ32は、ユーザである客のデータ管理に特化したサーバ用コンピュータである。ユーザ管理サーバ32は、ユーザ管理データベース35を備える。ユーザ管理データベース35は、ユーザ管理サーバ32が内蔵する記憶装置に形成されてもよいし、ユーザ管理サーバ32の外部に接続された記憶装置に形成されてもよい。
ユーザ管理データベース35は、ユーザ管理レコード351(図5を参照)を保存する。ユーザ管理レコード351は、ユーザ端末1にルート案内プログラムをインストールした客毎に作成される。ユーザ管理レコード351の主要なデータ構造を図5の模式図で表す。図5に示すように、ユーザ管理レコード351は、ユーザID、性別、年齢層、入店履歴等のデータ項目を含む。入店履歴は、客が商業施設の店舗に入った履歴を示すデータである。入店履歴は、客が店舗に入る毎に作成され、ユーザ管理レコード351に追加される。入店履歴は、店舗ID、入店日時、滞在時間を含む。各ユーザの入店履歴のデータは、前述した客層別平均滞在時間の算出に利用される。
ルート検索サーバ33は、商業施設を訪れた客の目的とその条件とから効率の良いルートを検索することに特化したサーバ用コンピュータである。すなわちルート検索サーバ33は、ルート検索装置の一態様である。ルート検索サーバ33は、ルートデータベース36を備える。ルートデータベース36は、ルート検索サーバ33が内蔵する記憶装置に形成されていてもよいし、ルート検索サーバ33の外部に接続された記憶装置に形成されていてもよい。
ルートデータベース36は、ルート管理レコード361(図6を参照)を保存する。ルート管理レコード361は、ルート案内サービスを受ける客毎に作成される。ルート管理レコード361の主要なデータ構造を図6の模式図で表す。図6に示すように、ルート管理レコード361は、ユーザID、開始時刻、滞在予定時間、最終到達地点、目的別関連項目、案内ルート362、入店日時及びアラートステータスS等のデータ項目を含む。これらのデータ項目のうち、入店日時及びアラートステータスSについては、後述の図11乃至図15の流れ図の説明で明らかにする。
開始時刻は、ルート検索を始める時刻である。滞在予定時間は、客が商業施設に滞在すると予定した時間である。最終到達地点は、滞在予定時間になった客が向かう商業施設内の場所である。例えば、駐車場、交通機関への通路、タクシー乗り場、シンボル又はオブジェの設置場所等の共用施設が最終到達地点となり得る。
目的別関連項目は、商業施設を訪れた客の目的毎に、その目的に係る条件と、優先順位と、達成フラグとを記録したものである。条件は1つとは限らない。条件は複数あってもよい。優先順位は、複数の目的がある場合に各目的に対して設定された優先度の順位である。優先順位は、客自身によって設定される。達成フラグは、目的を達成したか否かを識別する1ビットデータである。目的を達成したか否かは、客自身によって判断される。本実施形態では、目的を達成していない場合の達成フラグを“0”とし、目的を達成した場合の達成フラグを“1”とする。
商業施設を訪れた客の目的には、例えば「父の日のプレゼントを購入したい」、「春物の衣料品を購入したい」というような商品の購買を伴う目的がある。また、例えば「ウィンドウショッピングを楽しみたい」、「美味しいものを食べたい」というような商品の購買を伴わない目的もある。そして、「父の日のプレゼントを購入したい」という目的に係る条件としては、父の年齢、趣味、嗜好等が挙げられる。「春物の衣料品を購入したい」という目的に係る条件としては、対象者の性別、年齢、体型、嗜好等が挙げられる。「ウィンドウショッピングを楽しみたい」という目的に係る条件としては、本人の性別、年齢、趣味、嗜好等が挙げられる。「美味しいものを食べたい」という目的に係る条件としては、本人の性別、年齢、飲食店の業種、業態、嗜好等が挙げられる。
案内ルート362は、商業施設において、ユーザIDで識別される客が、開始時刻から滞在予定時間以内に、目的別関連項目で特定される目的を達成して最終到達地点に向かうのに効率の良いルートを示すデータである。
図7は、案内ルート362のデータ構造を示す模式図である。図7に示すように案内ルート362は、案内の順番毎に、場所、時刻、滞在時間及び目的を記述したテーブル状のデータである。場所は、目的を達成することが可能な店舗又は最終到達地点の情報である。店舗の情報は、店舗IDを含む。時刻は、その店舗又は最終到達地点に到達する予定の時刻である。滞在時間は、客がその店舗で滞在すると推定される推定滞在時間である。目的は、その店舗で達成することが可能な目的を表すデータである。このような案内ルート362のデータは、ルート検索サーバ33において、ルート管理レコード361の開始時刻、滞在予定時間、最終到達地点、目的別関連項目の各データを基に、店舗管理データベース34の店舗管理レコード341及びユーザ管理データベース35のユーザ管理レコード351が適宜参照されて、作成される。
図8は、ルート検索サーバ33の要部回路構成を示すブロック図である。ルート検索サーバ33は、プロセッサ331、メインメモリ332、補助記憶デバイス333、時計334、通信インターフェース335、店舗検索部336、ルート検索部337及びシステム伝送路338を備える。システム伝送路338は、アドレスバス、データバス、制御信号線等を含む。システム伝送路338は、プロセッサ331と、メインメモリ332、補助記憶デバイス333、時計334、通信インターフェース335、店舗検索部336及びルート検索部337とを相互に接続する。プロセッサ331、メインメモリ332及び補助記憶デバイス333がシステム伝送路338で接続されることにより、ルート検索サーバ33のコンピュータが構成される。
プロセッサ331は、上記コンピュータの中枢部分に相当する。プロセッサ331は、オペレーティングシステム又はアプリケーションプログラムに従って、ルート検索サーバ33としての各種の機能を実現するべく各部を制御する。プロセッサ331は、例えばCPU(Central Processing Unit)である。
メインメモリ332は、上記コンピュータの主記憶部分に相当する。メインメモリ332は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ332は、不揮発性のメモリ領域ではオペレーティングシステム又はアプリケーションプログラムを記憶する。メインメモリ332は、プロセッサ331が各部を制御するための処理を実行する上で必要なデータを不揮発性又は揮発性のメモリ領域で記憶する場合もある。メインメモリ332は、揮発性のメモリ領域を、プロセッサ331によってデータが適宜書き換えられるワークエリアとして使用する。不揮発性のメモリ領域は、例えばROM(Read Only Memory)である。揮発性のメモリ領域は、例えばRAM(Random Access Memory)である。
補助記憶デバイス333は、上記コンピュータの補助記憶部分に相当する。例えばEEPROM(Electric Erasable Programmable Read-Only Memory)、HDD(Hard Disk Drive)、あるいはSSD(Solid State Drive)等が補助記憶デバイス333となり得る。補助記憶デバイス333は、プロセッサ331が各種の処理を行う上で使用するデータ、プロセッサ331での処理によって作成されたデータ等を保存する。補助記憶デバイス333は、上記のアプリケーションプログラムを記憶する場合もある。
メインメモリ332又は補助記憶デバイス333に記憶されるアプリケーションプログラムには、ルート検索サーバ33で実行される情報処理に関して記述した制御プログラムが含まれる。制御プログラムをメインメモリ332又は補助記憶デバイス333にインストールする方法は特に限定されるものではない。リムーバブルな記録媒体に登録プログラムを記録して、あるいはネットワークを介した通信により制御プログラムを配信して、メインメモリ332又は補助記憶デバイス333にインストールすることができる。記録媒体は、CD−ROM,メモリカード等のようにプログラムを記憶でき、かつ装置が読み取り可能であれば、その形態は問わない。
時計334は、ルート検索サーバ33の時刻情報源である。プロセッサ331は、時計334によって計時される時刻を現在の時刻として処理する。
通信インターフェース335は、所定の通信プロトコルに従い、ネットワーク4を介して接続された機器とデータ通信を行う。
店舗検索部336は、商業施設を訪れた客の目的毎に、その目的を達成し得るとして推奨する店舗を検索することに特化したデータ処理部である。ルート検索部337は、店舗検索部336で検索された店舗を巡るルートを検索することに特化したデータ処理部である。店舗検索部336及びルート検索部337は、いずれも人工知能(AI)を利用したソフトウェアによって実現されている。
具体的には、店舗検索部336は、図9に示すように、受付部336a、推定部336b、選択部336c及び出力部336dを備えている。受付部336aは、客の商業施設を訪れた目的とその目的に係るn個の条件とを、店舗検索部336への入力データとして受け付ける。因みに“n”は、1以上の整数である。
推定部336bは、受付部336aで入力を受け付けた条件で、同じく入力を受け付けた目的に合う店舗の業種又は業態を推定する。この推定には、目的及び条件を入力データとし、業種又は業態を出力データとして、入力に対して対応した出力を推定するための予測モデルを使用する。目的が商品購買を伴う目的の場合、その目的に係る条件でその目的を達成し得る商品を販売若しくは提供する店舗の業種又は業態は必然的に決まってくる。また、目的が商品購買を伴わない場合でも、その目的に係る条件でその目的を達成し得る店舗の業種又は業態は必然的に決まってくる。したがって、相関関係を有する目的、条件、業種、業態をそれぞれ教師データとして汎用の機械学習アルゴリズムを用いることで、上記の予測モデルを作成することができる。
選択部336cは、店舗管理レコード341を参照データとして、推定部336bで推定された業種又は業態の店舗を選択する。選択部336cは、該当する店舗が複数存在する場合には、それらの店舗を一括して選択する。出力部336dは、選択部336cで選択された店舗の店舗IDを、推奨店舗の店舗識別データとしてルート検索部337へと出力する。
ルート検索部337は、図10に示すように、受付部337a、作成部337b、演算部337c、判定部337d、編集部337e及び出力部337fを備えている。受付部337aは、店舗検索部336から出力されたn個の推奨店舗の店舗識別データを受け付ける。因みに“n”は、1以上の整数である。
作成部337bは、受付部337aで受け付けた店舗識別データで識別される推奨店舗を巡る案内ルート362を作成する。案内ルート362を作成するにあたり、作成部337bは、商業施設のマップデータと、各推奨店舗の出店場所と、客の現在位置と、最終到達地点とを参照する。マップデータは、商業施設を構成する各店舗と共用施設のレイアウトを平面直角座標系で示すデータである。マップデータは、補助記憶デバイス333に記憶されている。各店舗の出店場所は、店舗管理レコード341から得られる。客の現在位置は、ユーザ端末1からのデータ信号を受信しているアクセスポイント41の位置により特定される。各アクセスポイント41の位置データは、予め補助記憶デバイス333に設定されている。最終到達地点は、ユーザ管理レコード351から得られる。作成部337bは、現在位置から各店舗を通り最終到達地点に至るまでの案内ルート362を、移動距離が最小となるというルールに従い作成する。
演算部337cは、作成部337bで作成された案内ルート362に沿って商業施設を巡るのに要する時間、すなわち商業施設での滞在時間を算出する。この滞在時間を算出するにあたり、演算部337cは、客層と各店舗の客層別平均滞在時間とを参照する。客層は、ユーザ管理レコード351から得られる。客層別平均滞在時間は、店舗管理レコード341から得られる。客層別平均滞在時間は、客の当該店舗での推定滞在時間となり得る。演算部337cは、案内ルート362に含まれる各店舗の該当する客層の平均滞在時間を合算し、さらに移動時間を加算することで、商業施設での滞在時間を算出する。移動時間は、客が案内ルート362に沿って店舗間を移動するのに要する時間である。予め補助記憶デバイス333には、例えば「店舗Aと店舗Bとの間の移動時間は3分」というように、店舗間の移動に要する時間が設定されている。
判定部337dは、演算部337cで算出された商業施設での滞在時間と客の滞在予定時間との差分を算出し、この差分が閾値時間を超えるか否かを判定する。そして差分が閾値時間を超える場合、判定部337dは、作成部337bに対して案内ルート362の変更を指示する。客の滞在予定時間は、ルート管理レコード361から得られる。閾値時間は、予め補助記憶デバイス333に設定されている。閾値時間は、滞在時間が客の滞在予定時間を上回るときと下回るときとで異なる時間が設定されてもよい。
案内ルート362の変更指示を受けた作成部337bは、案内ルート362を作成し直す。このとき作成部337bは、滞在時間が客の滞在予定時間を上回る場合には、優先順位の高い店舗を優先的に巡るように、優先順位が下位の目的に対応した店舗から順に除外して案内ルート362を作成し直す。ただし、優先順位が下位の目的に対応した店舗がすべて除外されてしまう場合で、それよりも優先順位が上位の目的に対応した店舗が複数ある場合には、作成部337bは、その優先順位が上位の目的に対応した店舗の1つを除外して案内ルート362を作成し直す。つまり作成部337bは、優先順位が下位の目的に対応した店舗を残して、案内ルート362を作成し直す。作成部337bは、滞在時間が客の滞在予定時間を下回る場合には、新たな店舗又は共用施設を追加して案内ルート362を作成し直す。新たな店舗又は共用施設とは、喫茶店、公園、休憩施設等が考えられる。
演算部337cは、作成部337bで作成し直された案内ルート362による商業施設での滞在時間を算出する。判定部337dは、演算部337cで算出された商業施設での滞在時間と客の滞在予定時間との差分が閾値時間を超えるか否かを判定する。そして差分が閾値時間を超える場合、判定部337dは、作成部337bに対してルート変更を再度指示する。
以後、案内ルート362による商業施設での滞在時間と客の滞在予定時間との差分が閾値時間の範囲内に収まるようになるまで、作成部337b、演算部337c及び判定部337dは、上述した処理を繰り返す。そして、商業施設での滞在時間と客の滞在予定時間との差分が閾値時間の範囲内に収まる案内ルート362が作成された場合には、判定部337dは、編集部337eに対して案内ルート362の編集を指示する。この指示を受けた編集部337eは、演算部337cで使用した客層別の平均滞在時間と店舗間の移動時間とを参照して、案内ルート362の順番毎に各場所に対応した時刻と滞在時間とを編集する。
出力部337fは、編集部337eで編集された案内ルート362のデータをプロセッサ331に出力する。この出力を受けて、プロセッサ331は、該当するルート管理レコード361に案内ルート362のデータを上書き保存する。
かくして、店舗検索部336及びルート検索部337により、商業施設を訪れた客の目的とその目的に係る条件とから効率の良い案内ルート362が検索される。つまり、購入する商品が決まっていない場合でも効率の良い案内ルート362が検索される。そして、この案内ルート362のデータを含むルート管理レコード361がルートデータベース36に保存されて、ルート案内サービスに供せられる。
ここに、店舗検索部336は、ユーザである客の商業施設での目的とその目的に係る複数の条件とを入力データとし、当該商業施設に出店している各店舗の業種又は業態を参照データとして、上記目的に合う店舗を検索する店舗検索手段として機能する。また、ルート検索部337は、店舗検索部336で検索された店舗と客の商業施設での滞在予定時間とを入力データとし、当該商業施設のレイアウト及び店舗での推定滞在時間を参照データとして、滞在予定時間内に店舗を巡る案内ルートを作成するルート作成手段として機能する。特に、ルート検索部337は、入力データとして目的の優先順位を含み、優先順位の高い店舗を優先的に巡る案内ルートを作成している。また、ルート検索部337は、参照データとしてルートの最終到達地点を含み、滞在予定時間内に店舗を巡って最終到達地点に至る案内ルートを作成している。
次に、ルート検索サーバ33のプロセッサ331について説明する。
図11乃至図15は、ルート検索サーバ33のプロセッサ331が実行する主要な情報処理の手順を示す流れ図である。プロセッサ331は、メインメモリ332または補助記憶デバイス333で記憶されている制御プログラムに従い、この情報処理を実行する。なお、情報処理の手順はこれに限定されるものではない。同様な結果を得ることが可能であれば、情報処理の手順は種々変形して実施することができる。
図11に示すように、プロセッサ331は、ACT1としてコマンドを待機している。そして、通信インターフェース335を介してコマンドを受信すると、プロセッサ331は、ACT2としてそのコマンドを解析して得られたデータからコマンドの種類を識別する。
ここで、本実施形態においてルート検索サーバ33が受信するコマンドには、起動コマンドと終了コマンドと入店コマンドと退店コマンドとがある。起動コマンドは、ルート案内プログラムが起動してサーバシステム3との通信回線が確立したユーザ端末1から発信される。終了コマンドは、ルート案内プログラムが停止されたユーザ端末1から発信される。入店コマンドは、入店を検知した入退店検出システム2から発信される。退店コマンドは、退店を検知した入退店検出システム2から発信される。起動コマンド及び終了コマンドには、コマンド送信元のユーザ端末1に設定されているユーザIDが含まれている。入店コマンド及び退店コマンドには、コマンド送信元の入退店検出システム2が構成された店舗の店舗IDが含まれている。
プロセッサ331は、ACT3として起動コマンドを受信したか否かを確認する。起動コマンドを受信していない場合、プロセッサ331は、ACT3においてNOと判定し、ACT4へと進む。プロセッサ331は、ACT4として入店コマンドを受信したか否かを判定する。入店コマンドを受信していない場合、プロセッサ331は、ACT4においてNOと判定し、ACT5へと進む。プロセッサ331は、ACT5として退店コマンドを受信したか否かを判定する。退店コマンドを受信していない場合、プロセッサ331は、ACT5においてNOと判定し、ACT6へと進む。プロセッサ331は、ACT6として終了コマンドを受信したか否かを判定する。終了コマンドを受信していない場合、プロセッサ331は、ACT6においてNOと判定し、他のコマンド受信処理を実行する。
受信したコマンドが起動コマンドであった場合には、プロセッサ331は、ACT3においてYESと判定し、ACT7へと進む。プロセッサ331は、ACT7として受付処理を実行する。なお、以下では、起動コマンド送信元のユーザ端末1をユーザ端末1Aと表す。
図12は、受付処理の手順を具体的に示す流れ図である。プロセッサ331は、受付処理に入ると、ACT11として起動コマンドからユーザIDを取得する。またプロセッサ331は、時計334で計時されている時刻を開始時刻として取得する。そしてプロセッサ331は、ACT12としてユーザIDと開始時刻とをセットしたルート管理レコード361を作成し、ルートデータベース36に登録する。以下では、ACT12の処理でルートデータベース36に登録されたルート管理レコード361をルート管理レコード361Aと表す。
プロセッサ331は、ACT13として起動コマンド送信元のユーザ端末1Aに対して滞在予定時間を問い合わせる。この問合せにより、ユーザ端末1Aでは、ユーザである客に対して滞在予定時間の入力を促す画像が表示デバイスに表示されるので、客は、入力デバイスを操作して滞在予定時間を入力する。プロセッサ331は、ACT14としてユーザ端末1Aから滞在予定時間を取得し、ルート管理レコード361Aに記述する。
プロセッサ331は、ACT15としてユーザ端末1Aに対して目的と条件の収集を対話形式で行う。例えばプロセッサ331は、先ず、ユーザ端末1Aに対して商業施設に訪れた目的を問い合わせる。この問合せにより、ユーザ端末1Aでは、例えば「商業施設を訪れた目的は何ですか」と問い合わせる画像が表示デバイスに表示されるので、客は、入力デバイスを介して目的を入力する。プロセッサ331は、ユーザ端末1Aから目的を取得したならば、ユーザ端末1Aに対してその目的に係る条件を問い合わせる。
例えば、目的が「父の日のプレゼントを購入したい」というものであった場合、プロセッサ331は、条件として父の年齢を問い合わせる。この問合せにより、ユーザ端末1Aでは、例えば「お父様の年齢はおいくつですか」と問い合わせる画像が表示デバイスに表示されるので、客は、入力デバイスを介して父の年齢を入力する。プロセッサ331は、ユーザ端末1Aから条件として父の年齢を取得したならば、ACT16へと進む。
プロセッサ331は、ACT16として1つの目的に対する条件の収集を終了したか否かを確認する。目的が「父の日のプレゼントを購入したい」の場合、条件としては父の年齢以外に父の趣味、嗜好等がある。このためプロセッサ331は、ACT16においてNOと判定し、ACT15へと戻る。プロセッサ331は、客に対して父の趣味又は嗜好を問い合わせる。ユーザ端末1Aでは、客に対して父の趣味又は嗜好の入力を促す画像が表示デバイスに表示されるので、客は、入力デバイスを介して父の趣味又は嗜好を可能な限り入力する。プロセッサ331は、ユーザ端末1Aから条件として父の趣味又は嗜好を取得したならば、ACT16へと進む。
こうして、1つの目的に対する条件の収集を終了した場合、プロセッサ331は、ACT16においてYESと判定し、ACT17へと進む。プロセッサ331は、ACT17としてユーザ端末1Aから取得した情報により目的関連項目のデータを作成し、ルート管理レコード361Aに記述する。なお、この時点の目的関連項目のデータには、優先順位は設定されていない。また、達成フラグは、未達成を表す“0”となっている。
ACT17の処理を終えると、プロセッサ331は、ACT18として商業施設に訪れた別の目的があるか否かを問合せる。この問合せにより、ユーザ端末1Aでは、例えば「別の目的はありますか」と問い合わせる画像が表示デバイスに表示されるので、客は、入力デバイスを介して目的の有無を入力する。別の目的がある場合、プロセッサ331は、ACT18においてYESと判定し、ACT15へと戻る。そしてプロセッサ331は、ユーザ端末1Aに対して別の目的と条件の収集を対話形式で行う。その結果、その新たな目的に対して目的関連項目のデータが作成され、ルート管理レコード361Aに記述される。
プロセッサ331は、ユーザ端末1Aから別の目的がないことの通知を受けた場合には、ACT18においてNOと判定し、ACT19へと進む。プロセッサ331は、ACT19としてユーザ端末1Aに対して目的の優先順位を設定するように指示する。この指示により、ユーザ端末1Aでは、例えば「目的の優先順位を設定してください」と指示する画像が表示デバイスに表示されるので、客は、入力デバイスを介して目的の優先順位を入力する。そして優先順位が入力されたならば、プロセッサ331は、ルート管理レコード361Aに記述された各目的関連項目のデータに各々の優先順位を設定する。
因みに、上述したような対話形式による目的と条件の収集及び優先順位の設定は、既存のAIロボットの技術を利用することで可能である。
こうして、ACT11乃至ACT19の処理を終えると、プロセッサ331は、ACT20として店舗検索部336に店舗検索の実行を指令する。この指令により、前述したように店舗検索部336では推奨店舗が検索される。推奨店舗が検索されると、プロセッサ331は、ACT21としてルート検索部337にルート検索を指令する。この指令により、ルート検索部337ではルート検索が行われ、案内ルート362のデータが出力される。
プロセッサ331は、ACT22としてルート管理レコード361Aに案内ルート362のデータを記述する。またプロセッサ331は、ACT23として案内ルート362のデータをユーザ端末1Aに対して出力するように通信インターフェース335を制御する。以上で、プロセッサ331は、受付処理を終了する。
かかる受付処理が実行されることにより、ルート検索サーバ33からユーザ端末1Aにネットワーク4を介して案内ルート362のデータが送信される。このデータを受信したユーザ端末1Aにおいては、ルート案内プログラムに従い、表示デバイスに案内ルートが表示される。
図11の説明に戻る。
受信したコマンドが入店コマンドであった場合には、プロセッサ331は、ACT4においてYESと判定し、ACT8へと進む。プロセッサ331は、ACT8として入店処理を実行する。なお、以下では、入店コマンド送信元のユーザ端末1をユーザ端末1Bと表す。
図13は、入店処理の手順を具体的に示す流れ図である。プロセッサ331は、入店処理に入ると、ACT31として入店コマンドからユーザIDと店舗IDとを取得する。またプロセッサ331は、ACT32として時計334で計時されている日時を入店日時として取得する。
プロセッサ331は、ACT33としてルートデータベース36を検索して、入店コマンドから取得したユーザIDがセットされたルート管理レコード361を取得する。以下では、入店コマンドから取得したユーザIDがセットされたルート管理レコード361をルート管理レコード361Bと表す。
プロセッサ331は、ACT34として入店コマンドから取得した店舗IDをルート管理レコード361Bの案内ルート362と照合する。そしてプロセッサ331は、当該店舗IDで識別される店舗が案内ルート362によって案内される店舗の1つであるか否かを確認する。具体的にはプロセッサ331は、案内ルート362の場所データに当該店舗IDが含まれているか否かを確認する。
案内ルート362の場所データに当該店舗IDが含まれている場合、当該店舗IDで識別される店舗は案内店舗である。この場合、プロセッサ331は、ACT35においてYESと判定し、ACT36へと進む。プロセッサ331は、ACT36として案内ルート362において当該店舗IDを含む場所データと関連付けられた時刻と、ACT32の処理で取得した入店日時の時刻とを比較する。そしてプロセッサ331は、案内ルート362から取得した時刻が入店日時の時刻よりも所定時間以上遅延しているか否かを確認する。所定時間は任意である。所定時間は、例えば15分が固定的に設定されている。所定時間は、滞在予定時間までの残り時間が短くなるほど短くなるように設定してもよい。例えば、滞在予定時間までの残り時間が2時間以上の場合には所定時間を20分とし、残り時間が1時間以上2時間未満の場合には所定時間を10分とし、1時間未満の場合には所定時間を5分としてもよい。なお、上述した時間は、あくまでも一例である。
所定時間の遅延が発生していない場合、プロセッサ331は、ACT36においてNOと判定し、ACT41へと進む。ACT41の処理については後述する。
これに対し、所定時間の遅延が発生している場合には、プロセッサ331は、ACT36においてYESと判定し、ACT37へと進む。プロセッサ331は、ACT37としてユーザ端末1Bに対して遅延アラートのコマンドを送信するように通信インターフェース335を制御する。この制御により、通信インターフェースからネットワーク4を介して遅延アラートのコマンドが送信される。コマンドには、入店コマンドから得られたユーザIDが含まれる。遅延アラートのコマンドは、アクセスポイント41を介して無線送信され、当該コマンド中のユーザIDが設定されたユーザ端末1Bで受信される。かくして、ユーザ端末1Bにおいては、案内ルートよりも遅れていることを客に通知する遅延アラートが出力される。遅延アラートは、表示によって出力されてもよいし、音声によって出力されてもよい。
遅延アラートのコマンド送信を制御したプロセッサ331は、ACT38としてルート管理レコード361Bのアラートステータスを“1”に設定する。そしてプロセッサ331は、ACT41へと進む。ここに、アラートステータスは、遅延アラートが発生した状態をデータ“1”として記憶する。
一方、案内ルート362の場所データに当該店舗IDが含まれていない場合には、当該店舗IDで識別される店舗は案内店舗ではない。この場合、プロセッサ331は、ACT35においてNOと判定し、ACT39へと進む。プロセッサ331は、ACT39としてルート管理レコード361BのアラートステータスSが“1”に設定されているか否かを確認する。アラートステータスSが“1”に設定されていない場合、遅延アラートは発生していない。この場合、プロセッサ331は、ACT39においてNOと判定し、ACT41へと進む。
これに対し、アラートステータスSが“1”に設定されていた場合には、当該案内店舗に至る前に遅延アラートが発生している。この場合、プロセッサ331は、ACT39においてYESと判定し、ACT40へと進む。プロセッサ331は、ACT40としてユーザ端末1に対してルート外アラートのコマンドを送信するように通信インターフェース335を制御する。この制御により、通信インターフェースからネットワーク4を介してルート外アラートのコマンドが送信される。コマンドには、入店コマンドから得られたユーザIDが含まれる。ルート外アラートのコマンドは、アクセスポイント41を介して無線送信され、当該コマンド中のユーザIDが設定されたユーザ端末1Bで受信される。かくして、ユーザ端末1Bにおいては、案内ルートから外れていることを客に通知するルート外アラートが出力される。ルート外アラートは、表示によって出力されてもよいし、音声によって出力されてもよい。ルート外アラートのコマンド送信を制御したプロセッサ331は、ACT41へと進む。
プロセッサ331は、ACT41としてルート管理レコード361Bに、ACT32の処理で取得した入店日時を記述する。以上で、プロセッサ331は、入店処理を終了する。
図11の説明に戻る。
受信したコマンドが退店コマンドであった場合には、プロセッサ331は、ACT5においてYESと判定し、ACT9へと進む。プロセッサ331は、ACT9として退店処理を実行する。なお、以下では、退店コマンド送信元のユーザ端末1をユーザ端末1Cと表す。
図14は、退店処理の手順を具体的に示す流れ図である。プロセッサ331は、退店処理に入ると、ACT51として退店コマンドからユーザIDと店舗IDとを取得する。またプロセッサ331は、ACT52として時計334で計時されている日時を退店日時として取得する。
プロセッサ331は、ACT53としてルートデータベース36を検索して、退店コマンドから取得したユーザIDがセットされたルート管理レコード361を取得する。以下では、退店コマンドから取得したユーザIDがセットされたルート管理レコード361をルート管理レコード361Cと表す。
プロセッサ331は、ACT54としてルート管理レコード361Cから入店日時を取得し、その入店日時の時刻から退店日時の時刻までの経過時間を滞在時間として算出する。そしてプロセッサ331は、ACT55として入店履歴を作成する。すなわちプロセッサ331は、ACT51の処理で取得した店舗IDと、ACT54の処理で取得した入店日時及び滞在時間とで、入店履歴を作成する。プロセッサ331は、ACT56として入店履歴をACT51の処理で取得したユーザIDとともにユーザ管理サーバ32へと出力する。ユーザ管理サーバ32は、当該ユーザIDがセットされたユーザ管理レコード351に入店履歴を追加する。
プロセッサ331は、ACT57として退店コマンドから取得した店舗IDをルート管理レコード361Cの案内ルート362と照合する。そしてプロセッサ331は、当該店舗IDで識別される店舗が案内ルート362によって案内される店舗の1つであるか否かを確認する。具体的にはプロセッサ331は、案内ルート362の場所データに当該店舗IDが含まれているか否かを確認する。
案内ルート362の場所データに当該店舗IDが含まれていない場合、当該店舗IDで識別される店舗は案内店舗ではない。この場合、プロセッサ331は、ACT58においてNOと判定し、ACT59へと進む。プロセッサ331は、ACT59としてルート管理レコード361CのアラートステータスSが“1”に設定されているか否かを確認する。アラートステータスSが“1”に設定されていない場合、遅延アラートは発生していない。この場合、プロセッサ331は、ACT59においてNOと判定し、退店処理を終了する。
これに対し、アラートステータスSが“1”に設定されていた場合には、遅延アラートが発生している。この場合、プロセッサ331は、ACT59においてYESと判定し、ACT60へと進む。以後、プロセッサ331は、ACT60、ACT61、ACT62及びACT63として、前述したACT19、ACT20、ACT21及びACT22の処理と同等の処理を実行する。
すなわちプロセッサ331は、ACT60として店舗検索部336に店舗検索の実行を指令する。この指令により、店舗検索部336では推奨店舗が検索される。推奨店舗が検索されると、プロセッサ331は、ACT61としてルート検索部337にルート検索を指令する。この指令により、ルート検索部337ではルート検索が行われ、案内ルート362のデータが出力される。プロセッサ331は、ACT62としてルート管理レコード361Cに案内ルート362のデータを記述する。またプロセッサ331は、ACT63として案内ルート362のデータをユーザ端末1Cに対して出力するように通信インターフェース335を制御する。以上で、プロセッサ331は、退店処理を終了する。
一方、案内ルート362の場所データに当該店舗IDが含まれている場合には、当該店舗IDで識別される店舗は案内店舗である。この場合、プロセッサ331は、ACT58においてYESと判定し、図15のACT71へと進む。プロセッサ331は、ACT71として案内店舗の滞在予定時間を超過したか否かを確認する。すなわちプロセッサ331は、案内ルート362において当該店舗IDを含む場所データと関連付けられた平均滞在時間と、ACT54の処理で算出した滞在時間とを比較する。そしてプロセッサ331は、滞在時間が平均滞在時間よりも所定時間以上超過しているか否かを確認する。所定時間は任意である。所定時間は、例えば15分が固定的に設定されている。所定時間は、滞在予定時間までの残り時間が短くなるほど短くなるように設定してもよい。例えば、滞在予定時間までの残り時間が2時間以上の場合には所定時間を20分とし、残り時間が1時間以上2時間未満の場合には所定時間を10分とし、1時間未満の場合には所定時間を5分としてもよい。なお、上述した時間は、あくまでも一例である。
滞在時間が平均滞在時間よりも所定時間以上超過していない場合、プロセッサ331は、ACT71においてNOと判定し、ACT74へと進む。ACT74の処理については後述する。
これに対し、滞在時間が平均滞在時間よりも所定時間以上超過している場合には、プロセッサ331は、ACT71においてYESと判定し、ACT72へと進む。プロセッサ331は、ACT72としてユーザ端末1Cに対して超過アラートのコマンドを送信するように通信インターフェース335を制御する。この制御により、通信インターフェースからネットワーク4を介して超過アラートのコマンドが送信される。コマンドには、退店コマンドから得られたユーザIDが含まれる。超過アラートのコマンドは、アクセスポイント41を介して無線送信され、当該コマンド中のユーザIDが設定されたユーザ端末1Cで受信される。かくして、ユーザ端末1Cにおいては、案内店舗での滞在時間が予定よりも超過していることを客に通知する超過アラートが出力される。超過アラートは、表示によって出力されてもよいし、音声によって出力されてもよい。
超過アラートのコマンド送信を制御したプロセッサ331は、ACT73としてルート管理レコード361Cのアラートステータスを“2”に設定する。そしてプロセッサ331は、ACT74へと進む。ここに、アラートステータスは、超過アラートが発生した状態をデータ“2”として記憶する。
プロセッサ331は、ACT74として退店コマンド送信元のユーザ端末1Cに対して商業施設を訪れた目的を達成したか否かを問い合わせる。この問合せにより、ユーザ端末1Cでは、ユーザである客に対して商業施設を訪れた目的を達成したか否かの入力を促す画像が表示デバイスに表示される。そこで客は、目的を達成したか否かを判断し、入力デバイスに対してその判断結果を示す入力を行う。この入力を受けて、プロセッサ331は、ACT75として目的が達成されたか否かを確認する。
目的が達成された場合、プロセッサ331は、ACT75においてYESと判定し、ACT76へと進む。プロセッサ331は、ACT76としてルート管理レコード361Cの目的別関連項目のうち、目的を達成した関連項目の達成フラグを“1”とする。しかる後、プロセッサ331は、ACT77、ACT78、ACT79及びACT80として、前述したACT60、ACT61、ACT62及びACT63の処理と同等の処理を実行する。
すなわちプロセッサ331は、ACT77として店舗検索部336に店舗検索の実行を指令する。この指令により、店舗検索部336では推奨店舗が検索される。ただしこの場合には、達成フラグが“1”に設定されている目的別関連項目の目的、条件、優先順位は除かれる。推奨店舗が検索されると、プロセッサ331は、ACT77としてルート検索部337にルート検索を指令する。この指令により、ルート検索部337ではルート検索が行われ、案内ルート362のデータが出力される。プロセッサ331は、ACT79としてルート管理レコード361Cに案内ルート362のデータを記述する。またプロセッサ331は、ACT80として案内ルート362のデータをユーザ端末1Cに対して出力するように通信インターフェース335を制御する。以上で、プロセッサ331は、退店処理を終了する。
一方、目的が達成されていない場合には、プロセッサ331は、ACT75においてNOと判定し、ACT81へと進む。プロセッサ331は、ACT81としてルート管理レコード361CのアラートステータスSが“1”又は“2”に設定されているか否かを確認する。アラートステータスSが“1”又は“2”に設定されていない場合、プロセッサ331は、ACT81においてNOと判定し、退店処理を終了する。
これに対し、アラートステータスSが“1”又は“2”に設定されていた場合には、プロセッサ331は、ACT81においてYESと判定し、ACT77へと進む。そしてプロセッサ331は、ACT77、ACT78、ACT79及びACT80として、前述したACT60、ACT61、ACT62及びACT63の処理と同等の処理を実行する。
図11の説明に戻る。
受信したコマンドが終了コマンドであった場合には、プロセッサ331は、ACT6においてYESと判定し、ACT10へと進む。プロセッサ331は、ACT10として終了処理を実行する。
図16は、終了処理の手順を具体的に示す流れ図である。プロセッサ331は、終了処理に入ると、ACT91として終了コマンドからユーザIDを取得する。そしてプロセッサ331は、ACT92としてルートデータベース36を検索し、ACT91の処理で取得したユーザIDがセットされたルート管理レコード361を削除する。以上で、プロセッサ331は、終了処理を終了する。
なお、ルート管理レコード361の削除とは、ルートデータベース36からルート管理レコード361を物理的に削除することである。あるいは、ルート管理レコード361に削除フラグを付加し、実質的に削除されているものとしてルートデータベース36に残してもよい。
ここに、プロセッサ331を主体とするルート検索サーバ33のコンピュータは、通信インターフェース335と協働して図12のACT15乃至ACT18の処理を実行することにより収集手段を構成する。すなわちコンピュータは、ユーザ端末1から、商業施設での目的とその目的に係る複数の条件とを収集する。
ルート検索サーバ33のコンピュータは、通信インターフェース335と協働して図12のACT23の処理を実行することにより出力手段を構成する。すなわちコンピュータは、ルート作成手段により作成された案内ルート362のデータをユーザ端末1に出力する。
ルート検索サーバ33のコンピュータは、通信インターフェース335と協働して図15のACT74及びACT75の処理を実行することにより、問合せ手段を構成する。すなわちコンピュータは、案内ルート362のデータ出力先であるユーザ端末1を使用する客に対し、案内ルート362で案内される店舗を退店したタイミングで、目的を達成したか否かを問い合わせ、その問合せに対する応答を受け付ける。そしてコンピュータは、問合せの結果、目的を達成したとの応答を受けたならば、図15のACT76乃至ACT80の処理を実行する。すなわちコンピュータは、その目的に合う店舗を除いた店舗の検索とその検索された店舗を巡る案内ルートの作成を再度実行する。
ルート検索サーバ33のコンピュータは、通信インターフェース335と協働して図15のACT71及びACT72の処理を実行することにより、通知手段を構成する。すなわちコンピュータは、案内ルート362のデータ出力先であるユーザ端末1を使用する客に対し、案内ルート362で案内される店舗での滞在時間が当該店舗に対する推定滞在時間を超えた場合に当該ユーザ端末1に対して超過アラートを通知する。そしてコンピュータは、滞在時間が推定滞在時間を超えた場合、すなわちアラートステータスSが“2”の場合に、図15のACT76乃至ACT80の処理を実行する。すなわちコンピュータは、案内ルートの作成を再度実行する。
このように本実施形態によれば、購入する商品が決まっていない場合でも、商業施設を訪れた客の目的とその目的に係る条件とから効率の良い案内ルート362を検索できるルート検索装置を提供することができる。その場合において、目的の優先順位が高い店舗を優先的に巡る案内ルート362を検索することができる。また、客が希望する滞在予定時間内に、当該客が希望する最終到達地点に到達する案内ルート362を検索することができる。しかも、目的は複数あってもよい。そして、そのうちの1つの目的が達成されたならば、その目的に合う店舗を除外した案内ルート362を検索することができる。また、案内ルート362で立ち寄る店舗での滞在予定時間が推定滞在時間を超過した場合には、アラートが発せられて、客に滞在時間の超過を警告することができる。
[第2の実施形態]
図17は、第2の実施形態のシステム構成を示す模式図である。第2の実施形態では、第1の実施形態のシステムに電子レシートシステムを組み入れる。電子レシートシステムは、各店舗において商品を購入した客の決済の際に作成されるレシートを紙媒体に印刷して発行するのではなく、電子化された電子レシートとして発行するためのシステムである。電子レシートシステムは、各店舗に設けられた電子レシート対応のPOS端末51と、電子レシートサーバ52とによって構成される。各POS端末51と電子レシートサーバ52とは、ネットワーク4に接続されている。
POS端末51は、客が購入する商品の販売データを登録処理する機能と、その登録処理された商品の販売データを基に商取引を決済する機能とを有する。また、POS端末51は、レシートを電子レシートで受け取る客の識別コードである電子レシートIDを読み取る読取手段を備える。そしてPOS端末51は、読取手段によって電子レシートIDを読み取ったならば、決済の際に生成した電子レシートのデータを電子レシートIDとともにネットワーク4を介して電子レシートサーバ52へと送信する。
電子レシートサーバ52は、電子レシートのデータを保存するための電子レシートデータベース53を備える。電子レシートデータベース53は、電子レシートサーバ52が内蔵する記憶装置に形成されてもよいし、電子レシートサーバ52の外部に接続された記憶装置に形成されてもよい。
電子レシートサーバ52は、各POS端末51から受信した電子レシートのデータを電子レシートIDと関連付けて電子レシートデータベース53に蓄積する。このように、電子レシートIDと関連付けて電子レシートデータベース53に蓄積された電子レシートのデータは、電子レシートIDで特定されるスマートフォン、タブレット端末、ノート型パソコン等の情報端末にダウンロードされて、客が閲覧することができる。
第2の実施形態では、ユーザ端末1に設定されているユーザIDを、そのユーザ端末1のユーザである客の電子レシートIDと連携させる。こうすることにより、ユーザ端末1のユーザである客が、商業施設内の店舗で商品を購入した場合、そのユーザ端末1に電子レシートのデータをダウンロードして閲覧することが可能となる。
このような電子レシートシステムを組み入れた第2の実施形態において、ルート検索サーバ33のプロセッサ331は、退店処理におけるACT74の処理を、第1の実施形態から変更する。
図18は、第1の実施形態のACT74の処理を変更した退店処理の一部を示す流れ図である。すなわちプロセッサ331は、図15のACT71においてNOと判定するか、ACT73の処理を終えると、ACT741として購買目的の店舗を退店したか否かを確認する。すなわちプロセッサ331は、目的関連項目の目的が商品の購入を伴う目的であるか否かを確認する。ここで、目的関連項目の目的が商品の購入を伴う目的でない、すなわち購買目的以外の店舗を退店した場合には、プロセッサ331は、ACT741としてNOと判定し、ACT744へと進む。ACT744の処理については後述する。
これに対し、目的関連項目の目的が商品の購入を伴う目的である、すなわち購買目的の店舗を退店した場合には、プロセッサ331は、ACT741としてYESと判定し、ACT742へと進む。プロセッサ331は、ACT742として、退店した店舗のPOS端末51からACT51の処理で取得したユーザIDと連携する電子レシートIDで発行された電子レシートを検索するように電子レシートサーバ52に通知する。この通知を受けた電子レシートサーバ52では、該当する電子レシートIDの電子レシートデータをPOS端末51から受信したか否かが確認される。そして受信していた場合には、電子レシートサーバ52からユーザ端末1に電子レシート有りの応答が通知される。受信していない場合には、電子レシートサーバ52からユーザ端末1に電子レシート無しの応答が通知される。
プロセッサ331は、ACT743として電子レシートサーバ52からの応答を待ち受ける。そして電子レシート無しの応答を受けた場合、プロセッサ331は、ACT743においてNOと判定し、図15のACT81の処理へと進む。
これに対し、電子レシート有りの応答を受けた場合には、プロセッサ331は、ACT743においてYESと判定し、ACT744へと進む。プロセッサ331は、ACT744として退店コマンド送信元のユーザ端末1Cに対して商業施設を訪れた目的を達成したか否かを問い合わせる。そしてプロセッサ331は、図15のACT75の処理へと進む。
このように第2の実施形態では、購買目的の店舗を退店した際には、その店舗で商品を購入したことを条件に目的を達成したか否かを問い合わせるようにした。換言すれば、商品を購入することなく購買目的の店舗を退店した場合には、目的を達成したか否かを問い合わせないようにした。したがって、無駄な問い合わせが発生しないので、ルート検索サーバ33の負荷を軽減することができる。また、ユーザである客にとっても煩わしさを感じることない。
以上、商業施設を訪れた客の目的から効率の良いルートを検索できるルート検索装置の実施形態について説明したが、かかる実施形態はこれに限定されるものではない。
前記実施形態では、作成部337bにおいて、現在位置から各店舗を通り最終到達地点に至るまでの案内ルート362を、移動距離が最小となるというルールに従い作成する場合を例示した。案内ルート362を作成するためのルールは、上記のルールに限定されるものではない。例えば、店舗によって混雑する時間帯がある場合、その時間帯を避けて案内ルート362を作成するようにしてもよい。また、購買目的の店舗が複数ある場合において、一方の店舗で特売を行っている場合、その特売を行っている店舗を優先的に巡るように案内ルート362を作成してもよい。
前記実施形態では、演算部337cで使用する店舗間の移動時間を固定時間とした。一般に、歩く速度は人によって異なる。そこで、客自身が歩く速度を設定し、その設定速度により移動時間を補正して、商業施設での滞在時間を算出してもよい。
前記実施形態では、案内店舗を退店する際に、目的を達成したか否かを客に問い合わせるようにした。目的を達成したか否かを問い合わせるタイミングは、退店時に限定されない。例えば、定期的に目的を達成したか否かを客に問い合わせるようにしてもよい。
前記実施形態では、ユーザ端末1に対して目的と条件の収集を対話形式で行う方法として、ユーザ端末1の表示デバイスに画像を表示し、入力デバイスを介して目的、条件等を入力するようにした。この点に関しては、ユーザ端末1が音声認識装置を備えていることを前提に、音声を利用して目的と条件の収集を行うようにしてもよい。
前記実施形態では、客は、滞在予定時間とともに最終到達地点を入力するようにした。商業施設によっては、最終到達地点が一義的に定まる場合がある。このような場合には、最終到達地点の入力を省略することができる。
前記実施形態では、店舗管理サーバ31とユーザ管理サーバ32とルート検索サーバ33とでサーバシステム3を構成した。サーバシステム3を構成するサーバは、上述した3つのサーバに限定されるものではない。例えば、1つのサーバで3つのサーバの機能を有するようにしてもよい。
この他、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態及びその変形は、発明の範囲に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。