以下、図面に基づいて本発明の実施の形態を説明する。図1は、第1の実施の形態における繁忙情報提供システムの構成例を示す図である。図1において、繁忙情報提供システム1は、繁忙度計算装置10及び繁忙情報生成装置20を含む。繁忙度計算装置10と繁忙情報生成装置20とは、LAN(Local Area Network)又はインターネット等のネットワークを介して接続されている。繁忙度計算装置10は、1以上の店舗端末30とインターネット等のネットワークを介して接続されている。繁忙情報生成装置20は、1以上のユーザ端末40とインターネット等のネットワークを介して接続されている。
店舗端末30は、店舗ごとに設置されている端末である。例えば、PC(Personal Computer)や専用の端末等が、店舗端末30として利用されてもよい。各店舗端末30は、カメラ50に接続されている。カメラ50は、例えば、店舗の出入り口等を撮像可能なように設置され、店舗への客の出入りを示す画像データを撮像する。店舗端末30は、カメラ50によって撮像される画像データに基づいて計測される店舗内の客数と、店員によって入力される店員数とを、任意のタイミングで(例えば、一定時間ごとに)繰り返し繁忙度計算装置10に送信する。
繁忙度計算装置10は、各店舗端末30から送信される客数及び店員数に基づいて、店舗の繁忙状況又は混雑状況(以下、「繁忙状況で統一する。」を示す指標値(以下、「繁忙度」という。)を店舗ごとに計算する。繁忙度の計算は、例えば、定期的に行われる。
ユーザ端末40は、店舗を訪れるユーザが携帯する端末である。例えば、スマートフォン、タブレット端末、携帯電話等がユーザ端末40として利用されてもよい。ユーザ端末40は、ユーザによる操作に応じ、ユーザが訪れた店舗の繁忙度の問い合わせを、繁忙情報生成装置20に送信する。
繁忙情報生成装置20は、ユーザ端末40からの問い合わせに応じ、当該問い合わせに係る店舗に関する繁忙状況を示す情報(以下、「繁忙情報」という。)を、当該ユーザ端末40に送信(応答)する。第1の実施の形態において、繁忙情報は、問い合わせに係る店舗に関して繁忙度計算装置10によって計算された最新の繁忙度に基づく情報である。繁忙情報は、繁忙度そのものであってもよいが、本実施の形態では、繁忙度に基づいて生成されるメッセージを示す文字列が繁忙情報とされる。
図2は、第1の実施の形態における繁忙度計算装置のハードウェア構成例を示す図である。図2の繁忙度計算装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
繁忙度計算装置10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って繁忙度計算装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
なお、繁忙情報生成装置20も、図2に示されるハードウェア構成を有するコンピュータによって構成されてもよい。また、繁忙度計算装置10と繁忙情報生成装置20とは、1以上の共通のコンピュータを用いて実現されてもよい。
図3は、第1の実施の形態における繁忙情報提供システムの機能構成例を示す図である。図3において、繁忙度計算装置10は、客数店員数受信部11及び繁忙度計算部12を有する。これら各部は、繁忙度計算装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。繁忙度計算装置10は、また、客数店員数DB13及び繁忙度DB14等のデータベースを利用する。これら各データベースは、例えば、補助記憶装置102、又は繁忙度計算装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
客数店員数受信部11は、店舗端末30の入退店検出部31によって検出される店舗の客数と、店員によって店舗端末30に入力される店舗の店員数とを、各店舗端末30から受信する。客数店員数受信部11は、受信された客数及び店員数を、店舗別に客数店員数DB13に記憶する。
繁忙度計算部12は、客数店員数DB13に店舗別に記憶されている客数及び店員数に基づいて、店舗ごとに繁忙度を計算する。計算された繁忙度は、繁忙度DB14に記憶される。繁忙度は、例えば、定期的に計算される。繁忙度DB14には、計算された繁忙度の履歴が記憶される。
一方、繁忙情報生成装置20は、繁忙度取得部21及び繁忙情報生成部22を有する。これら各部は、繁忙情報生成装置20にインストールされた1以上のプログラムが、繁忙情報生成装置20のCPUに実行させる処理により実現される。繁忙情報生成装置20は、また、店舗DB23及び通知文DB24等のデータベースを利用する。これら各データベースは、例えば、繁忙情報生成装置20の補助記憶装置、又は繁忙情報生成装置20にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
繁忙度取得部21は、ユーザ端末40から送信される店舗名に係る店舗について計算された繁忙度を、繁忙度DB14から取得する。
繁忙情報生成部22は、繁忙度取得部21によって取得された繁忙度と通知文DB24とに基づいて、繁忙情報をユーザに通知するための文(以下、「繁忙情報通知文」という。)を生成し、当該繁忙情報通知文をユーザ端末40に送信する。通知文DB24には、繁忙度に応じて、繁忙情報通知文の雛形(以下、「通知文テンプレート」という。)が記憶されている。
以下、第1の実施の形態において繁忙度計算装置10及び繁忙情報生成装置20が実行する処理手順について説明する。まず、繁忙度計算装置10が実行する処理手順について説明する。
図4は、客数及び店員数の受信処理の処理手順の一例を説明するためのフローチャートである。
繁忙度計算装置10の客数店員数受信部11は、各店舗端末30からの客数又は店員数の受信を待機している。客数店員数受信部11は、いずれかの店舗端末30の入退店検出部31から送信された客数を受信すると(ステップS101でYes)、当該客数を当該客数と共に受信された店舗IDに関連付けて、客数店員数DB13に記憶する(ステップS102)。
なお、入退店検出部31は、例えば、特開2012−33142号公報に記載された技術を用いて、店舗における客の入退店数を計測し、計測結果に基づいて店内の客数を算出てもよい。すなわち、カメラ50によって撮像される画像に基づいて、入退店数が計測されてもよい。入退店検出部31は、例えば、1分おき又は5分おき等、予め設定された時間間隔ごとに、客数を算出し、算出された客数を客数店員数受信部11に送信する。
また、客数店員数受信部11は、いずれかの店舗端末30の店員数送信部32から送信された店員数を受信すると(ステップS103でYes)、当該店員数を当該店員数と共に受信された店舗IDに関連付けて、客数店員数DB13に記憶する(ステップS104)。なお、店員数送信部32は、現時点において接客を行っている店員数が店員等によって店舗端末30に入力されると、当該店員数を客数店員数受信部11に送信する。店舗端末30に対する店員数の入力は、店員数が変化したときに行われてもよいし、定期的に行われてもよい。
図5は、第1の実施の形態における客数店員数DBの構成例を示す図である。図5に示されるように、客数店員数DB13には、店舗ごとにレコードが記憶されている。各レコードは、店舗ID、係数α、客数、及び店員数等の項目を含む。
店舗IDは、店舗ごとの識別情報である。客数、店員数は、図4の処理によって記憶される客数、店員数である。すなわち、ステップS102又はS104では、客数店員数DB13のレコードのうち、客数又は店員数と共に受信された店舗IDに係るレコードが、更新される。
係数αは、繁忙度の計算に利用される係数であり、その値は、例えば、図6に示されるように、店舗の規模が小さい程、大きな値となる。係数αは、各店舗の規模や業態等の属性に応じて、予め設定される。
図7は、繁忙度の計算処理の処理手順の一例を説明するためのフローチャートである。図7の処理は、例えば、1分おき又は5分おき等、予め設定された時間間隔ごとに、各店舗について実行される。図7において、繁忙度の計算対象とされている店舗を、「対象店舗」という。
ステップS111において、繁忙度計算部12は、客数店員数DB13のレコードのうち、対象店舗の店舗IDを含むレコードの客数、店員数、及び係数αを取得する。
続いて、繁忙度計算部12は、取得された客数、店員数、及び係数αを、以下の式に当てはめて、対象店舗の繁忙度を算出する(ステップS112)。
繁忙度=α(客数÷店員数)
上の式は、基本的に、店員一人あたりの客数が繁忙度であることを示す。但し、店員一人あたりの客数が何人であれば繁忙の度合が高いか否かは、店舗の規模や業態によって異なるものと考えられる。そこで、本実施の形態では、店舗の規模や業態等の属性に応じた係数αが予め設定され、係数αを「客数÷店員数」に乗じることで、繁忙度が算出される。
続いて、繁忙度計算部12は、算出した繁忙度、対象店舗の店舗ID及び係数α、並びに現在日時を含むレコードを繁忙度DB14に記憶する(ステップS113)。
図8は、第1の実施の形態における繁忙度DBの構成例を示す図である。図8に示されるように、繁忙度DB14の各レコードは、店舗ID、係数α、日時、及び繁忙度等を含む。ステップS113では、繁忙度DB14に対して新たなレコードが生成され、当該レコードに対して、対象店舗の店舗ID及び係数α、現在日時、並びに算出された繁忙度が記憶される。すなわち、繁忙度DB14には、算出された繁忙度の履歴が記憶される。
次に、繁忙情報生成装置20が実行する処理手順について説明する。図9は、第1の実施の形態において繁忙情報生成装置が実行する処理手順の一例を説明するためのフローチャートである。
ステップS210において、繁忙度取得部21は、店舗名を含む、店舗の繁忙状況の問い合わせをユーザ端末40から受信する。ユーザ端末40に対する店舗名の入力は、ユーザ端末40に表示されている図10に示されるような画面を介して行われる。例えば、ユーザは、自らがこれから入ろうと店舗の店舗名を入力する。当該画面の「送信ボタン」が押下されると、入力された店舗名を含む、店舗の繁忙状況の問い合わせが繁忙度取得部21へ送信される。図10では、店舗名として、「Aカフェ」が入力された例が示されている。なお、ユーザ端末40のユーザが視覚障がい者である場合、ユーザ端末40は、音声ガイダンス等によって、ユーザの操作を補助してもよい。
続いて、繁忙度取得部21は、受信された店舗名に対応する店舗IDを、店舗DB23から取得する(ステップS220)。
図11は、第1の実施の形態における店舗DBの構成例を示す図である。図11に示されるように、店舗DB23には、店舗ごとに、店舗IDと店舗名とが対応付けられて記憶されている。例えば、店舗名が「Aカフェ」であれば、店舗ID「a」が取得される。
続いて、繁忙度取得部21は、取得された店舗IDに関する最新の繁忙度を繁忙度DB14(図8)から取得する(ステップS230)。或る店舗IDに関する最新の繁忙度とは、当該店舗IDを含むレコードの中で、「日時」の値が最も新しいレコードに含まれている繁忙度をいう。例えば、店舗ID「a」については、2015.09.01 15:40の時の繁忙度「25」が取得される。
続いて、繁忙度取得部21は、店舗名「Aカフェ」と最新の繁忙度「25」とを繁忙情報生成部22に送信する(ステップS240)。
続いて、繁忙情報生成部22は、店舗名及び繁忙度と通知文DB24とに基づいて、繁忙情報を通知するための文(以下、「繁忙情報通知文」という。)を生成する(ステップS250)。
図12は、第1の実施の形態における通知文DBの構成例を示す図である。図12に示されるように、通知文DB24には、繁忙度の範囲に応じて通知文テンプレートが記憶されている。例えば、繁忙度が「25」であれば、「混んでいます」が通知文テンプレートとして取得される。繁忙情報生成部22は、通知文テンプレートに対して店舗名「Aカフェ」を組み合わせることで、例えば、「Aカフェは混んでいます」という繁忙情報通知文を生成する。
続いて、繁忙情報生成部22は、繁忙情報通知文(「Aカフェは混んでいます」)を、繁忙状況の問い合わせ元のユーザ端末40に送信する(ステップS260)。
当該ユーザ端末40は、繁忙情報通知文(「Aカフェは混んでいます」)を受信すると、当該繁忙情報通知文を出力する。例えば、繁忙情報通知文が音声合成されて出力されてもよいし、ユーザ端末40のディスプレイに表示されてもよいし、点字ディスプレイに出力されてもよいし、その他の方法で出力されてもよい。
上述したように、第1の実施の形態によれば、ほぼ現時点における店舗の客数及び店員数に基づいて繁忙度が算出され、当該繁忙度に基づく繁忙情報通知文がユーザ端末40にて出力される。したがって、ユーザは、店舗の繁忙状況を容易に把握することができる。
次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。第2の実施の形態において特に言及されない点については、第1の実施の形態と同様でもよい。
図13は、第2の実施の形態における繁忙情報提供システムの機能構成例を示す図である。図13中、図3と同一部分には同一符号を付し、その説明は省略する。
図13において、繁忙情報生成装置20は、更に、訪問履歴管理部25を有する。訪問履歴管理部25は、繁忙情報生成装置20にインストールされた1以上のプログラムが、繁忙情報生成装置20のCPUに実行させる処理により実現される。繁忙情報生成装置20は、また、訪問履歴DB26を利用する。訪問履歴DB26は、例えば、繁忙情報生成装置20の補助記憶装置、又は繁忙情報生成装置20にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
訪問履歴管理部25は、各ユーザによる各店舗への訪問履歴を訪問履歴DB26に記録する。訪問履歴管理部25は、また、繁忙状況の問い合わせに係る店舗にユーザが、問い合わせに係る店舗に最後に訪れた時期を訪問履歴DB26を参照して特定し、その時の繁忙度を繁忙度DB14を参照して特定する。
図14は、第2の実施の形態において繁忙情報生成装置が実行する処理手順の一例を説明するためのフローチャートである。図14中、図9と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。すなわち、第2の実施の形態では、図9の処理手順の代わりに、図14の処理手順が実行される。
ステップS210aにおいて、繁忙度取得部21は、店舗名に加えてユーザIDを含む、店舗の繁忙状況の問い合わせをユーザ端末40から受信する。ユーザ端末40に対するユーザID及び店舗名の入力は、ユーザ端末40に表示されている図15に示されるような画面を介して行われる。例えば、ユーザは、自らのユーザIDと、自らがこれから入ろうと店舗の店舗名を入力する。当該画面の「送信ボタン」が押下されると、入力されたユーザID及び店舗名を含む、店舗の繁忙状況の問い合わせが繁忙度取得部21へ送信される。図15では、ユーザIDとして「ユーザ01」が入力され、店舗名として、「Aカフェ」が入力された例が示されている。
続くステップS220、S230では、図9において説明したように、店舗ID「a」と繁忙度「25」とが取得される。ステップS230において取得された繁忙度を、以下、「今回の繁忙度」という。
続いて、繁忙度取得部21は、ユーザID「ユーザ01」と、店舗名「Aカフェ」と、店舗ID「a」と、今回の繁忙度「25」とを訪問履歴管理部25に送信する(ステップS231)。
続いて、訪問履歴管理部25は、ユーザIDが「ユーザ01」であるユーザによる、店舗IDが「a」である店舗への最後の(最新の)訪問日時を、訪問履歴DB26から取得する(ステップS232)。
図16は、第2の実施の形態における訪問履歴DBの構成例を示す図である。図16に示されるように、訪問履歴DB26には、各ユーザによるいずれかの店舗の訪問ごとに、レコードが記憶される。各レコードは、ユーザID、店舗ID、及び訪問日時等の項目を含む。ユーザIDは、店舗を訪問したユーザのユーザIDである。店舗IDは、訪問先の店舗の店舗IDである。訪問日時は、訪問が行われた日時である。図16の例では、ユーザIDが「ユーザ01」であるユーザによる、店舗IDが「a」である店舗への最後の(最後の)訪問日時として、「2015.08.03 08:02」が取得される。
続いて、訪問履歴管理部25は、ユーザID「ユーザ01」と、店舗ID「a」と、現在日時とを含むレコードを、訪問履歴DB26に記録する(ステップS233)。すなわち、今回の訪問履歴が訪問履歴DB26に記録される。
続いて、訪問履歴管理部25は、店舗ID「a」に関して、最後の訪問日時「2015.08.03 08:02」に最も近い日時における繁忙度を、繁忙度DB14(図8)から取得する(ステップS234)。図8の例では、「2015.08.03 08:02」に最も近い日時「2015.08.03 08:00」の繁忙度「5」が取得される。
続いて、訪問履歴管理部25は、店舗名「Aカフェ」と、今回の繁忙度「25」と、「2015.08.03 08:00」の繁忙度(以下、「前回の繁忙度」という。)「5」とを繁忙情報生成部22に送信する(ステップS240a)。
続いて、繁忙情報生成部22は、店舗名「Aカフェ」と、今回の繁忙度「25」と、前回の繁忙度「5」と、通知文DB24とに基づいて、繁忙情報通知文を生成する(ステップS250a)。
図17は、第2の実施の形態における通知文DBの構成例を示す図である。図17に示されるように、第2の実施の形態において、通知文DB24には、今回の繁忙度と前回の繁忙度との大小関係に応じて、通知文テンプレートが記憶されている。
したがって、繁忙情報生成部22は、今回の繁忙度と前回の繁忙度とを比較し、比較結果に対応する通知文テンプレートを通知文DB24から取得する。例えば、今回の繁忙度「25」と前回の繁忙度「5」とについては、「前回より混んでいます」が通知文テンプレートとして取得される。繁忙情報生成部22は、通知文テンプレートに対して店舗名「Aカフェ」を組み合わせることで、例えば、「Aカフェは前回より混んでいます」という繁忙情報通知文を生成する。
以降は、第1の実施の形態において説明した通りである。
上述したように、第2の実施の形態によれば、繁忙状況の問い合わせるに係る店舗について、ほぼ現時点の繁忙度と、ユーザが最後に当該店舗を訪れた際の繁忙度との比較に基づく繁忙情報通知文が提示される。すなわち、第1の実施の形態では、いわば絶対値としての繁忙情報通知文が提示されたが、第2の実施の形態では、相対値としての繁忙情報通知文が提示される。したがって、ユーザは、最後に当該店舗を訪れた際に自らが感じた繁忙状況との比較によって、現在の繁忙状況を把握することができる。
次に、第3の実施の形態について説明する。第3の実施の形態では第2の実施の形態と異なる点について説明する。第3の実施の形態において特に言及されない点については、第2の実施の形態と同様でもよい。第2の実施の形態では、前回の繁忙度のみが用いられたが、第3の実施の形態では、問い合わせに係る店舗に関する、ユーザによる過去の全ての訪問時の繁忙度が用いられる。
図18は、第3の実施の形態において繁忙情報生成装置が実行する処理手順の一例を説明するためのフローチャートである。図18中、図14と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。すなわち、第3の実施の形態では、図14の処理手順の代わりに、図18の処理手順が実行される。図18では、図14のステップS232、S234、S240a、S250aが、S232b、S234b、S240b、S250bに置き換えられている。
ステップS232bにおいて、訪問履歴管理部25は、ユーザIDが「ユーザ01」であるユーザによる、店舗IDが「a」である店舗への全ての訪問日時を、訪問履歴DB26から取得する。図16の例では、「2014.12.22 08:00」、「2015.04.12 08:15」、「2015.08.03 08:02」が取得される。
ステップS234bにおいて、訪問履歴管理部25は、全ての訪問日時のそれぞれごとに、当該訪問日時に最も近い日時の繁忙度を繁忙度DB14から取得し、取得された繁忙度の平均値(以下、「平均繁忙度」という。)を算出する。図8の例では、「2014.12.22 08:00」、「2015.04.12 08:15」、「2015.08.03 08:02」に関して、繁忙度「5」、「8」、「5」が取得され、それらの平均値「6」が平均繁忙度として算出される。
ステップS240bにおいて、繁忙度取得部21は、店舗名「Aカフェ」と今回の繁忙度「25」と平均繁忙度「6」とを繁忙情報生成部22に送信する。
ステップS250bにおいて、繁忙情報生成部22は、店舗名「Aカフェ」と、今回の繁忙度「25」と、平均繁忙度「6」と、通知文DB24とに基づいて、繁忙情報通知文を生成する。
図19は、第3の実施の形態における通知文DBの構成例を示す図である。図19に示されるように、第3の実施の形態の通知文DB24には、今回の繁忙度と平均繁忙度との大小関係に応じて、通知文テンプレートが記憶されている。
したがって、繁忙情報生成部22は、今回の繁忙度と平均繁忙度とを比較し、比較結果に対応する通知文テンプレートを通知文DB24から取得する。例えば、今回の繁忙度「25」と平均繁忙度「6」とについては、「いつもより混んでいます」が通知文テンプレートとして取得される。繁忙情報生成部22は、通知文テンプレートに対して店舗名「Aカフェ」を組み合わせることで、例えば、「Aカフェはいつもより混んでいます」という繁忙情報通知文を生成する。
以降は、第1の実施の形態において説明した通りである。
上述したように、第3の実施の形態によれば、繁忙状況の問い合わせるに係る店舗について、ほぼ現時点の繁忙度と、ユーザが過去に当該店舗を訪れた際の平均繁忙度との比較に基づく相対的な繁忙情報通知文が提示される。したがって、ユーザは、過去に当該店舗を訪れた際に自らが感じた繁忙状況との比較によって、現在の繁忙状況を把握することができる。
なお、上記では、繁忙状況の問い合わせに係る店舗に対する、ユーザの全ての訪問時の繁忙度の平均値が算出される例を示したが、例えば、過去1ヶ月等、所定の期間における全ての訪問時の繁忙度の平均が算出されてもよい。
次に、第4の実施の形態について説明する。第4の実施の形態では第2の実施の形態と異なる点について説明する。第4の実施の形態において特に言及されない点については、第2の実施の形態と同様でもよい。
図20は、第4の実施の形態において繁忙情報生成装置が実行する処理手順の一例を説明するためのフローチャートである。図20中、図14と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。すなわち、第4の実施の形態では、図14の処理手順の代わりに、図20の処理手順が実行される。
ステップS210aの処理内容は、図14において説明した通りであるが、ここでは、便宜上、ユーザID「ユーザ01」と店舗名「スーパーG」とが受信されたこととする。
ステップS220cにおいて、繁忙度取得部21は、受信された店舗名に対応する店舗IDと規模値とを、店舗DB23から取得する。
図21は、第4の実施の形態における店舗DBの構成例を示す図である。図21に示されるように、第4の実施の形態の店舗DB23には、店舗ごとに、店舗IDと規模値と店舗名とが対応付けられて記憶されている。規模値は、店舗の規模を示す数値であり、予め設定される。図21では、規模が小さい程、規模値の値が大きくなる例が示されている。例えば、店舗名が「スーパーG」であれば、店舗ID「g」及び規模値「1」が取得される。
ステップS230では、店舗ID「g」に対する最新の繁忙度が繁忙度DB14(図8)から取得される。ここでは、「2015.09.01 15:40」の時の繁忙度「11」が取得される。
ステップS231cにおいて、繁忙度取得部21は、ユーザID「ユーザ01」と、店舗名「スーパーG」と、店舗ID「g」と、規模値「1」と、今回の繁忙度「25」とを訪問履歴管理部25に送信する。
ステップS232cにおいて、訪問履歴管理部25は、ユーザIDが「ユーザ01」であるユーザによる、店舗IDが「g」である店舗への最後の(最新の)訪問日時を、訪問履歴DB26(図16)から取得すると共に、店舗比較データを生成する。
図22は、初期状態の店舗比較データの例を示す図である。店舗比較データは、対象店舗ID及び店舗比較IDの項目を有するデータであり、例えば、繁忙情報生成装置20のメモリに生成される。図22に示されるように、店舗比較データの初期状態においては、対象店舗ID及び比較店舗IDのそれぞれに、対象店舗の店舗ID「g」が書き込まれる。
ここで、訪問履歴DB26(図16)には、ユーザIDが「ユーザ01」であり、店舗IDが「g」であるレコードが無い。「ユーザ01」に係るユーザは、店舗ID「g」に係る対象店舗を過去に訪れたことが無いからである。この場合、訪問履歴管理部25は、ステップS232cにおいて、対象店舗と同規模の店舗へのユーザによる最後(最新)の訪問日時を取得する。具体的には、訪問履歴管理部25は、店舗ID「g」と規模値が同じである店舗IDを、店舗DB23(図21)から取得する。図21の例では、店舗ID「c」について、規模値が「1」であるため、店舗ID「c」が取得される。訪問履歴管理部25は、ユーザIDが「ユーザ01」であるユーザによる、店舗IDが「c」である店舗への最後の(最新の)訪問日時を訪問履歴DB26から取得する。図16の例では、店舗IDが「c」である店舗への最後の(最後の)訪問日時として、「2015.08.14 18:07」が取得される。そこで、訪問履歴管理部25は、図23に示されるように、店舗比較データの「比較店舗ID」の値を、「c」に書き換える。
なお、仮に、訪問履歴DB26(図16)に店舗IDが「g」であるレコードが有った場合、すなわち、店舗比較データの対象店舗IDの値と比較店舗IDとの値が同じままである場合、以降においては、第2又は第3の実施の形態と同様の処理手順が実行されてもよい。
ステップS234cにおいて、訪問履歴管理部25は、店舗ID「c」に関して、最後の訪問日時「2015.08.14 18:07」に最も近い日時における繁忙度を、繁忙度DB14(図8)から取得する。図8の例では、「2015.08.14 18:07」に最も近い日時「2015.08.14 18:05」の繁忙度「20」が取得される。
ステップS240cにおいて、訪問履歴管理部25は、対象店舗ID「g」と、対象店舗の最新の繁忙度「11」と、比較店舗ID「c」と、比較店舗に前回訪れた際の繁忙度「20」とを、繁忙情報生成部22に送信する。
ステップS241において、繁忙情報生成部22は、対象店舗ID「g」と比較店舗ID「c」とのそれぞれに対する店舗名を、店舗DB23(図21)から取得する。ここでは、対象店舗ID「g」に対して「スーパーG」が取得され、店舗ID「c」に対して店舗名「Cマート」が取得される。
ステップS250cにおいて、繁忙情報生成部22は、対象店舗ID「g」の最新の繁忙度「11」と、比較店舗ID「c」に前回訪れた際の繁忙度「20」と、通知文DB24とに基づいて、繁忙情報通知文を生成する。
図24は、第4の実施の形態における通知文DBの構成例を示す図である。図24に示されるように、第4の実施の形態の通知文DB24には、対象店舗の繁忙度と比較店舗の繁忙度との大小関係に応じて、通知文テンプレートが記憶されている。
したがって、繁忙情報生成部22は、対象店舗の最新の繁忙度と、比較店舗に前回訪れた際の繁忙度とを比較し、比較結果に対応する通知文テンプレートを通知文DB24から取得する。例えば、対象店舗の繁忙度「11」と比較店舗の繁忙度「20」とについては、「前回行った比較店舗より空いています」が通知文テンプレートとして取得される。繁忙情報生成部22は、通知文テンプレートに対して対象店舗の店舗名「スーパーG」と比較店舗の店舗名「Cマート」を組み合わせることで、例えば、「スーパーGは前回行ったCマートより空いています」という繁忙情報通知文を生成する。
以降は、第1の実施の形態において説明した通りである。
上述したように、第4の実施の形態によれば、ユーザが初めて訪れた店舗であっても、ユーザが訪れたことの有る他の店舗での繁忙度との比較に基づく相対的な繁忙情報通知文を提示することができる。
なお、上記各実施の形態において、繁忙度計算装置10及び繁忙情報生成装置20は、繁忙情報提供装置の一例である。繁忙度計算部12は、計算部の一例である。繁忙度DB14は、第1の記憶部の一例である。繁忙情報生成部22は、送信部の一例である。訪問履歴DB26は、第2の記憶部の一例である。
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。