(58)【調査した分野】(Int.Cl.,DB名)
前記空席情報収集部が時期をずらして複数回に亘って収集した空席情報における変化傾向、若しくは、前記送信部が前記ユーザ端末に送信した前記店舗リストを通じて行われた前記サイト群の店舗へのアクセス状況に基づいて、前記空席情報収集部が収集した空席情報の店舗に対し、予約が行える信頼度を算定する算定部を更に備え、
前記リスト生成部は、前記検索部が検索した店舗情報を含む店舗リストを、前記算定部が算定した信頼度の順に並び替える、
ことを特徴とする請求項2に記載のサーバ装置。
【発明を実施するための形態】
【0011】
以下に本発明の実施形態を説明する。本発明の実施形態では、各種のポータルサイトに登録されている店舗(レストラン等の飲食店)や独自の予約サイトを立ち上げている店舗に関する空席情報を事前に収集し、この空席情報を用いて、予約可能な店舗を一括検索することのできる予約支援システムを一例として説明する。以下では、予約対象として、レストラン等の飲食店を一例として説明するが、他に、レンタル対象物(DVD,CD,自動車等)や他の施設(宿泊所,遊技場等)のように、予約対象が異なる場合でも適宜適用可能である。
また、以下の実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【0012】
(全体構成)
本発明の実施形態に係る予約支援システム100は、
図1に示すように、予約支援サーバ200と、サイト群300と、ユーザ端末400とがインターネット900を介して通信可能に接続されて構成されている。
なお、サイト群300は、レストラン等の飲食店(店舗)に関する情報を提供する各種のポータルサイトや、飲食店が個別に立ち上げた独自の予約サイト等である。このサイト群300からは、後述するように、各店舗の空席情報が収集可能となっている。また、図中では簡略化しているが、ユーザ端末400は、利用するユーザに応じて、多数存在しているものとする。
【0013】
予約支援サーバ200は、例えば、サーバ装置(サーバ用コンピュータ)等であり、サイト群300から各店舗における空席情報を事前(例えば、2ヶ月先までの空席情報を30分毎や1時間毎)に収集しておき、この空席情報を用いて、ユーザの条件に合致する予約可能な店舗を一括検索し、検索結果(店舗リスト)をユーザ端末400に提供する。
なお、予約支援サーバ200の詳細については、後述する。
【0014】
ユーザ端末400は、例えば、ブラウザ機能を有するパソコンやスマートフォン等であり、インターネット900を介して予約支援サーバ200にアクセスし、所望の条件に適う予約可能な店舗についての情報を取得する。
具体的にユーザ端末400は、ブラウザを通じて予約支援サーバ200にアクセスし、後述するような検索画面に所望の検索条件をセットして検索を要求することで、予約可能な店舗リストを含んだ検索結果画面を得ることができる。そして、ユーザ端末400から、店舗リスト内の何れかの店舗が選ばれると、後述するリンク情報により、サイト群300における対象のサイト(ポータルサイトや独自の予約サイト)に遷移でき、その店舗の予約が行えるようになっている。
【0015】
(情報処理装置の概要構成)
本発明の実施形態に係る予約支援サーバ200、及び、ユーザ端末400が実現される典型的な情報処理装置500について説明する。
【0016】
情報処理装置500は、
図2に示すように、CPU(Central Processing Unit)501と、ROM(Read Only Memory)502と、RAM(Random Access Memory)503と、記憶デバイス504と、表示デバイス505と、通信デバイス506と、操作デバイス507と、を備える。
【0017】
CPU 501は、情報処理装置500全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。
【0018】
ROM 502には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、所定のプログラムをRAM 503に読み出してCPU 501による当該プログラムの実行が開始される。
【0019】
RAM 503は、データやプログラムを一時的に記憶するためのもので、記憶デバイス504から読み出したプログラムやデータ、その他、通信に必要なデータ等が保持される。
【0020】
記憶デバイス504は、SSD(Solid State Drive)やハードディスク等であり、種々のデータを記憶する。例えば、記憶デバイス504は、情報処理装置500全体の動作制御に必要なオペレーティングシステムのプログラムや各種のアプリケーションや付随するデータ等を記憶する。
【0021】
表示デバイス505は、例えば、LCD(Liquid Crystal Display)等の表示装置と、その表示装置に表示するための画像情報を記憶するVRAM(Video Random Access Memory)と、画像情報を処理するための画像処理部とを含んで構成されている。この画像処理部は、記憶デバイス504から読み出されたデータや、CPU 501にて処理されたデータを加工処理した後、これをVRAMに格納するなどして、画像情報を生成する。
【0022】
通信デバイス506は、移動体通信網や無線LAN等を利用して無線通信を行う。なお、通信デバイス506は、有線LAN等を利用して有線通信を行ってもよい。
【0023】
操作デバイス507は、タッチスクリーンやタッチパッド、ボタンやキーボード、若しくは、マウス等であり、ユーザの操作を受け付ける。なお、音声によって、ユーザの操作を受け付けてもよい。
【0024】
以下、上記情報処理装置500において実現される予約支援サーバ200の構成等について、
図3〜
図7を参照して説明する。情報処理装置500に電源が投入されると、本実施形態に係る予約支援サーバ200(本発明に係るサーバ装置)として機能させるプログラムが実行され、本実施形態に係る予約支援サーバ200が実現される。
なお、ユーザ端末400も同様に情報処理装置500において実現され、後述するように、予約支援サーバ200の少なくとも一部の機能をユーザ端末400でも実現可能であるが、ここでは、本実施形態において最も特徴的な予約支援サーバ200について、以下説明する。
【0025】
(予約支援サーバの概要構成)
図3は、本実施形態に係る予約支援サーバ200の概要構成の一例を示すブロック図である。図示するように、予約支援サーバ200は、受信部210と、送信部220と、記憶部230と、制御部240とを備え、レストラン等の飲食店(店舗)の予約を支援する。
【0026】
受信部210は、インターネット900を介してユーザ端末400等から送られる種々の情報を受信する。
例えば、受信部210は、ユーザ端末400から送られる、予約可能な店舗を検索するための検索条件等の情報を受信する。この他にも、サイト群300から事前に空席情報を収集する際に、受信部210は、サイト群300における各店舗の空席情報を受信する。
上述した通信デバイス506等が、このような受信部210として機能しうる。
【0027】
送信部220は、インターネット900を介してユーザ端末400等に向けて、種々の情報を送信する。
例えば、送信部220は、ユーザ端末400に向けて、後述する検索画面や検索結果画面等を送信する。この他にも、サイト群300から事前に空席情報を収集する際に、送信部220は、サイト群300(具体的には、各ポータルサイトや各予約サイト)に対して、空席情報を収集するための手続き情報を送信する。
上述した通信デバイス506等が、このような送信部220として機能しうる。
【0028】
記憶部230は、予約可能な店舗を検索するために必要な種々の情報を記憶する。
例えば、記憶部230は、店舗管理情報231、及び、空席情報群232等を記憶する。
【0029】
店舗管理情報231は、検索対象となる飲食店の情報であり、一例として、
図4に示すような情報を含んでいる。
つまり、店舗管理情報231には、店舗ID231a、店舗名231b、所在地231c、ジャンル231d、店舗評価値231e、収集先アドレス231f、及び、収集間隔231g等が含まれている。
なお、ジャンル231dは、その店舗が提供する料理のジャンル(例えば、フレンチ,懐石,居酒屋,中華,イタリアン等)である。また、店舗評価値231eは、例えば、口コミ等により投稿されたその店舗の評価値である。また、収集先アドレス231fは、その店舗の空席情報を収集する際にアクセスすべきサイト群300(より詳細には、対象となるポータルサイトや予約サイト)のアドレスである。そして、収集間隔231gは、空席情報を収集する間隔を規定する情報であり、店舗に応じて異なる間隔が設定されている。なお、収集間隔231gは固定ではなく、後述するように、適宜変更される。
【0030】
図3に戻って、空席情報群232は、サイト群300から事前に収集した空席情報の集まりであり、各店舗において予約可能な空席に関する情報である。空席情報群232は、一例として、
図5に示すような情報を含んでいる。
つまり、空席情報群232には、空席ID232a、店舗ID232b、空席日時232c、空席数232d、予約の信頼度232e、及び、リンク情報232f等が含まれている。
なお、空席日時232cは、予約可能な空席がある日時である(図中では、2時間単位の時間を示しているが、一例であり、1時間単位や、30分単位等であってもよい)。また、空席数232dは、その日時(空席日時232c)に予約可能な空席の数である。
また、予約の信頼度232eは、実際に予約を試みた際に、予約が成立する確度を示す値である。予約の信頼度232eは、後述するように、時期をずらして複数回に亘って収集した空席情報における変化傾向(つまり、空席が埋まる実績)、若しくは、ユーザ端末400に送信した店舗リスト(検索結果画面)を通じて行われたサイト群300の店舗へのアクセス状況(つまり、人気等)に応じて、適宜算定される。なお、最尤推定法により、満席となっていない確率(予約が取れる確率)と尤度関数とから、最尤推定量を求めて、予約の信頼度232eを算定してもよい。その際、他の検索条件との対比において、満席となっていない確率が高いものほど優先して、最尤推定量を求めてもよい。
そして、リンク情報232fは、その店舗に対して予約を行う際にアクセスすべきサイト群300(より詳細には、対象となるポータルサイトや予約サイト)のアドレス情報である。後述するように、店舗リストの遷移ボタンには、このリンク情報232fが張られており、遷移ボタンがクリックされると、ユーザ端末400のアクセス先が、サイト群300(より詳細には、対象となるポータルサイトや予約サイト)に遷移し、その店舗の予約が可能となる。
【0031】
記憶部230は、この他にも、制御部240の処理に必要な種々の情報を記憶する。例えば、記憶部230は、後述するように、ユーザ端末400が予約のためにサイト群300に遷移した際に、そのユーザ端末400のクッキー情報や検索条件等も記憶する。
上述したRAM 503や記憶デバイス504等が、このような記憶部230として機能しうる。
【0032】
図3に戻って、制御部240は、予約支援サーバ200全体を制御する。この制御部240は、例えば、空席情報収集部241、算定部242、検索部243、画面生成部244、設定更新部245、遷移検出部246、及び、空席情報更新部247等を含んでいる。
【0033】
空席情報収集部241は、サイト群300から各店舗の空席情報を事前に収集する。
例えば、空席情報収集部241は、上述した
図4の店舗管理情報231に基づいて、各店舗の空席情報(一例として、収集時点から2ヶ月先までの空席情報)を収集する。
空席情報収集部241は、収集した空席情報を、上述した
図5の空席情報群232(つまり、最新の空席情報の集まり)として、記憶部230に記憶する。
【0034】
算定部242は、空席情報収集部241が収集した空席情報の店舗に対し、予約が行える信頼度を算定する。
例えば、算定部242は、空席情報収集部241が時期をずらして複数回に亘って収集した空席情報における変化傾向、つまり、空席が埋まる実績等に基づいて、空席情報の店舗に対し、予約が行える信頼度を算定する。なお、このような信頼度の算定手法は、一例であり、他の手法で予約が行える信頼度を算定してもよい。
例えば、算定部242は、後述するような店舗リストを含む検索結果画面がユーザ端末400に送られた後に、その店舗リストを通じて行われたサイト群300の店舗へのアクセス状況、つまり、人気等に基づいて、空席情報の店舗に対し、予約が行える信頼度を算定してもよい。
この他にも、算定部242は、最尤推定法により、満席となっていない確率(予約が取れる確率)と尤度関数とから、最尤推定量を求めて、予約の信頼度232eを算定してもよい。その際、他の検索条件との対比において、満席となっていない確率が高いものほど優先して、最尤推定量を求めてもよい。
算定部242は、算定した信頼度を、
図5の空席情報群232における予約の信頼度232eとして記憶させる。
【0035】
検索部243は、ユーザ端末400から送られた検索条件に応じた店舗の情報を、空席情報群232から検索する。
例えば、検索部243は、後述するように、エリア,ジャンル,日時,人数,並び順等を含んだ検索条件を、ユーザ端末400から受け付けると(受信部210が受信すると)、その検索条件を検索キーにして空席情報群232を検索し、検索条件に合致した店舗情報を取得する。なお、検索条件の全てが合致しなくとも、部分的に一致している店舗情報を含めて取得してもよい。
【0036】
画面生成部244は、ユーザ端末400からのアクセスに応じて、種々の画面(webページ)を生成する。
例えば、画面生成部244は、
図6に示すような検索画面610や、
図7に示すような検索結果画面620を生成する。
図6に示す検索画面610には、予約したい日付を選択するためのドラムロール611a、予約したい時間を選択するためのドラムロール611b、予約したい人数を選択するためのドラムロール611c、及び、検索を指示する検索ボタン612が含まれている。なお、
図6では、予約したい店舗のエリア(地域)や、予約したい店舗のジャンルが既に選択済み(図の例では、○○エリア、及び、フレンチ)である場合を示している。つまり、エリアやジャンルは、例えば、タグ一覧等により、適宜選択されているものとする。
このような検索画面610は、一例であり、他の条件も選択できるようにしてもよい。例えば、店舗の雰囲気(落ち着いた店や、賑やかな店等)、予約人数における男女の割合(男性が多で女性が少、女性のみ等)、及び、予約の目的(デートや、歓送迎会等)を選択可能な検索画面610であってもよい。
【0037】
また、
図7に示す検索結果画面620には、検索結果を並びかえるためのタブ621、検索された店舗リスト622(622a〜c)、予約を行うためにサイト群300に遷移させるための遷移ボタン623(623a〜c)、及び、検索条件を変更するための再設定ボタン624が含まれている。
このような検索結果画面620は、一例であり、他の情報を含めてもよい。例えば、
図7には、タブ621として、予約の信頼度順、評価順、及び、所在地順を示しているが、他に、お勧め順や、平均金額帯順等を含めてもよい。また、店舗リスト622(622a〜c)中に、その条件での空席数(残り席数)等も含めてもよい。
【0038】
図3に戻って、設定更新部245は、
図4の店舗管理情報231における収集間隔231gを、適宜変更する。
例えば、設定更新部245は、上述した
図7に示すような検索結果画面620がユーザ端末400に送られた後に、その検索結果画面620(店舗リスト)を通じて行われたサイト群300の店舗へのアクセス状況、つまり、人気等に基づいて、その店舗の収集間隔231gを変更する。なお、各店舗の人気は、検索結果画面620を通じて行われたサイト群300の店舗へのアクセス状況(例えば、直近の1週間分)が集計されており、その集計結果に応じて、求められているものとする。
そして、設定更新部245は、店舗の人気が高ければ、その店舗の収集間隔231gを基準(例えば、1時間)よりも短い時間(例えば、30分等)に変更し、一方、店舗の人気が低ければ、その店舗の収集間隔231gを基準(例えば、1時間)よりも長い時間(例えば、2時間等)に変更する。
なお、このような収集間隔231gの変更手法は一例であり、他の手法で、収集間隔231gを変更してもよい。
例えば、設定更新部245は、空席情報収集部241が時期をずらして複数回に亘って収集した空席情報における変化傾向、つまり、空席が埋まる実績等に基づいて、その店舗の収集間隔231gを変更してもよい。
そして、設定更新部245は、空席が速く埋まる傾向であれば、その店舗の収集間隔231gを基準(例えば、1時間)よりも短い時間(例えば、30分等)に変更し、一方、空席が遅く埋まる傾向であれば、その店舗の収集間隔231gを基準(例えば、1時間)よりも長い時間(例えば、2時間等)に変更する。
【0039】
遷移検出部246は、ユーザ端末400が予約を行うために、サイト群300(より詳細には、対象となるポータルサイトや予約サイト)に、遷移したことを検出する。
例えば、上述した
図7に示すような検索結果画面620がユーザ端末400に表示されている際に、何れかの遷移ボタン623(623a〜c)が選択(クリックやタッチ)されると、遷移検出部246は、ユーザ端末400が予約のために、サイト群300へ遷移したことを検出する。
【0040】
空席情報更新部247は、遷移検出部246により遷移が検出されたユーザ端末400から、規定時間内に再度のアクセスがなかった場合に、検索時の条件でその店舗の予約が行われたものとして、空席情報群232における対象の空席情報を更新する。
例えば、空席情報更新部247は、検索時の検索条件を保存しており、
図5における空席数232d(対象となる空席数232d)から、検索条件における人数を減算する。なお、空席数232dの更新は、一時的なものであり、その店舗における次の収集タイミングで、空席情報収集部241により、空席情報が収集されると、空席数232dが最新の情報に上書きされる。つまり、空席情報更新部247は、次の収集タイミングまでの間において、予約が行われた可能性を考慮して、空席数232dを更新することにより、同様の検索条件で他のユーザ端末400から検索が行われた場合に、より適切な検索結果を提供できるようにしている。
なお、後述するように、サイト群300へ遷移が検出されたユーザ端末400から、規定時間内に再度のアクセスがなかったことを契機に、空席情報収集部241が、対象となる店舗の空席情報を前倒しで収集する場合、空席情報更新部247は、収集された最新の空席情報に応じて、空席数232d(対象となる空席数232d)を更新するようにしてもよい。
【0041】
制御部240は、この他にも、最初に予約支援サーバ200にアクセスしてきたユーザ端末400(より詳細には、ユーザ端末400のブラウザ)に対し、ユーザ端末400を識別するためのクッキー情報を配布する処理なども適宜行う。なお、配布するのは、クッキー情報に限られず、ユーザ端末400を識別可能であれば、他の情報であってもよい。
このようなクッキー情報等が配布された後には、ユーザ端末400が予約支援サーバ200にアクセスする際に、ユーザ端末400からクッキー情報等が送られる(より詳細には、クッキー情報等を伴ってアクセスされる)ため、ユーザ端末400を識別可能となる。
上述したCPU 501等が、このような構成からなる制御部240として機能しうる。
【0042】
(予約支援サーバの動作)
以下、このような構成の予約支援サーバ200の動作について
図8〜
図10を参照して説明する。
図8は、本実施形態に係る空席情報収集処理の流れを示すフローチャートである。また、
図9は、本実施形態に係る店舗検索処理の流れを示すフローチャートである。そして、
図10は、本実施形態に係る空席情報更新処理の流れを示すフローチャートである。
【0043】
最初に、
図8に示す空席情報収集処理について説明する。この空席情報収集処理は、サイト群300から各店舗について、予約可能な空席情報を事前に収集する処理であり、例えば、最小単位時間(一例として、30分)毎に、繰り返し実行される。
【0044】
まず、予約支援サーバ200は、店舗管理情報231からn番目の店舗の情報を参照する(ステップS11)。なお、nの値は、初期値が1であり、後述するステップS15にて、全店舗が完了していないと判別される度に、1ずつ加算されるものとする。
つまり、制御部240(空席情報収集部241)は、
図4の店舗管理情報231から、1つの店舗の情報を参照する。
【0045】
予約支援サーバ200は、n番目の店舗について、収集タイミングの見直しを行う(ステップS12)。
例えば、制御部240(設定更新部245)は、n番目の店舗の人気に応じて、収集タイミングの見直しを行う。なお、店舗の人気は、上述した
図7に示すような検索結果画面620(店舗リスト)を通じて行われたサイト群300の店舗へのアクセス状況(例えば、直近の1週間分)が集計されており、その集計結果に応じて、求められているものとする。そして、制御部240は、n番目の店舗の人気が高ければ、その店舗の収集間隔231gを基準(例えば、1時間)よりも短い時間(例えば、30分等)に変更し、一方、n番目の店舗の人気が低ければ、その店舗の収集間隔231gを基準(例えば、1時間)よりも長い時間(例えば、2時間等)に変更する。
なお、上述したように、制御部240は、時期をずらして複数回に亘って収集した空席情報における変化傾向、つまり、空席が埋まる実績等に基づいて、n番目の店舗の収集間隔231gを変更してもよい。そして、制御部240は、n番目の店舗の空席が速く埋まる傾向であれば、その店舗の収集間隔231gを基準(例えば、1時間)よりも短い時間(例えば、30分等)に変更し、一方、n番目の店舗の空席が遅く埋まる傾向であれば、その店舗の収集間隔231gを基準(例えば、1時間)よりも長い時間(例えば、2時間等)に変更する。
【0046】
予約支援サーバ200は、収集タイミングであるか否かを判別する(ステップS13)。
すなわち、制御部240は、見直し後の収集間隔231g(対象となる収集間隔231g)を参照し、今回が、その店舗の収集タイミングであるかどうかを判別する。
予約支援サーバ200は、収集タイミングでないと判別すると(ステップS13;No)、後述するステップS16に処理を進める。
【0047】
一方、収集タイミングであると判別した場合(ステップS13;Yes)に、予約支援サーバ200は、n番目の店舗の空席情報を、対象のサイトから収集する(ステップS14)。
すなわち、制御部240は、店舗管理情報231における収集先アドレス231f(対象となる収集先アドレス231f)を読み出し、そのアドレス先にアクセスし、予約可能な空席情報を収集する。
【0048】
予約支援サーバ200は、収集した空席情報を記憶部230に登録する(ステップS15)。
すなわち、制御部240は、収集した空席情報に対応する空席情報が
図5の空席情報群232に記憶されていれば、今回収集した空席情報にて上書きする。また、収集した空席情報に対応する空席情報が空席情報群232に記憶されていなければ、制御部240は、空席情報群232に今回収集した空席情報を追加して記憶する。その際、制御部240(算定部242)は、その空席情報の店舗に対し、予約が行える信頼度を算定し、空席情報群232における予約の信頼度232eとして記憶させる。
【0049】
予約支援サーバ200は、全店舗について処理が完了したか否かを判別する(ステップS16)。
予約支援サーバ200は、全店舗について処理が完了していないと判別すると(ステップS16;No)、上述したステップS11に処理を戻す(なお、nの値は1加算される)。
一方、全店舗について処理が完了したと判別すると(ステップS16;Yes)、予約支援サーバ200は、
図8の空席情報収集処理を終える。
【0050】
このような空席情報収集処理によって、サイト群300から各店舗の空席情報を事前に収集する。しかも、各店舗における収集タイミングは、検索結果画面620を通じて行われたサイト群300の店舗へのアクセス状況や、空席が埋まる実績等に基づいて適宜変更されている。そのため、有効な空席情報を効率よく収集することができる。
【0051】
次に、
図9に示す店舗検索処理について説明する。この店舗検索処理は、例えば、上述した
図6に示すような検索画面610が、ユーザ端末400に提供されており、検索条件が設定された後に、検索ボタン612が選択(クリックやタッチ)された際に開始される。
なお、上述した
図8の空席情報収集処理によって、
図5の空席情報群232には、最新の空席情報が登録されているものとする。
【0052】
まず、予約支援サーバ200は、検索条件を受信する(ステップS21)。
すなわち、制御部240(検索部243)は、予約可能な店舗を検索するための検索条件(一例として、エリア,ジャンル,日時,人数,並び順等を含んだ検索条件)を、受信部210を通じて、ユーザ端末400から受信する。なお、検索条件の並び順が、予約の信頼度順、評価順、及び、所在地順の何れかであるの場合を一例として説明するが、他の並び順であってもよい。
【0053】
予約支援サーバ200は、受信した検索条件を用いて、空席情報群232を検索する(ステップS22)。
すなわち、制御部240は、検索条件を検索キーにして、空席情報群232を検索し、検索条件に合致した店舗情報を得る。
【0054】
予約支援サーバ200は、検索条件における並び順が、予約の信頼度順であるか否かを判別する(ステップS23)。
予約支援サーバ200は、並び順が予約の信頼度順であると判別すると(ステップS23;Yes)、検索により得られた店舗情報を予約の信頼度順に並び替えた店舗リストを作成する(ステップS24)。
すなわち、制御部240(画面生成部243)は、得られた店舗情報を、予約の信頼度の高い順にソートした店舗リストを作成する。
【0055】
予約支援サーバ200は、並び順が予約の信頼度順でないと判別した場合(ステップS23;No)に、検索条件における並び順が、評価順であるか否かを判別する(ステップS25)。
予約支援サーバ200は、並び順が評価順であると判別すると(ステップS25;Yes)、検索により得られた店舗情報を評価順に並び替えた店舗リストを作成する(ステップS26)。
すなわち、制御部240は、得られた店舗情報を、評価の高い順にソートした店舗リストを作成する。
【0056】
予約支援サーバ200は、並び順が評価順でないと判別した場合(ステップS25;No)に、検索により得られた店舗情報を所在地順に並び替えた店舗リストを作成する(ステップS27)。
すなわち、制御部240は、得られた店舗情報を、所在地の順にソートした店舗リストを作成する。なお、ユーザ端末400から、ユーザの現在位置が取得できている場合に、制御部240は、得られた店舗情報を、ユーザの現在位置に近い順にソートした店舗リストを作成してもよい。
【0057】
なお、並び順が指定されていなかった場合には、以下の条件に沿って、自動的に並び順を変更して、店舗リストを作成してもよい。
まず、検索条件の日時(つまり、予約日時)が迫っている場合(例えば、現在日時と予約日時との差が、基準値よりも小さい場合)に、制御部240は、検索により得られた店舗情報を予約の信頼度順に並び替えた店舗リストを作成する。
また、検索条件の日時が迫っておらず、ユーザ端末400から、ユーザの現在位置が取得できている場合に、制御部240は、検索により得られた店舗情報を所在地順に並び替えた店舗リストを作成する。
また、検索条件の日時が迫っておらず、ユーザの現在位置が取得できていない場合に、制御部240は、検索により得られた店舗情報を評価順に並び替えた店舗リストを作成する。
【0058】
予約支援サーバ200は、作成した店舗リストを含んだ検索結果画面を生成する(ステップS28)。
例えば、上述のステップS26にて、予約の信頼度順にソートした店舗リストを生成した場合に、制御部240(画面生成部244)は、
図7に示すような検索結果画面620を生成する。
図7に示す検索結果画面620には、予約の信頼度が高い順に店舗リスト622(622a〜c)が並び替えられている。また、店舗リスト622(622a〜c)の各店舗に対して、予約を行うためにサイト群300に遷移させるための遷移ボタン623(623a〜c)が配置されている。
【0059】
予約支援サーバ200は、生成した検索結果画面をユーザ端末400に送信する(ステップS29)。
すなわち、制御部240は、
図7に示すような検索結果画面620を、送信部220を通じてユーザ端末400に提供する。
【0060】
このような店舗検索処理では、サイト群300から事前に収集した各店舗の空席情報を基に一括検索するため、より多くの店舗の中から検索条件に応じた店舗を、より迅速に検索することができる。
また、検索された店舗リストは、例えば、予約できる信頼度が高い順に並んでおり、換言すると、空席状況に余裕のない店舗(予約が取り難い店舗)の優先度が下げられているため、実際に予約を行うべく、サイト群300に遷移した際に、満席で予約ができないといった不都合を減らすことができる。
【0061】
次に、
図10に示す空席情報更新処理について説明する。この空席情報更新処理は、上述した店舗検索処理によって、例えば、
図7に示すような検索結果画面620がユーザ端末400に提供されており、この検索結果画面620から、何れかの遷移ボタン623(623a〜c)が選択(クリックやタッチ)された際に開始される。
【0062】
まず、予約支援サーバ200は、遷移したユーザ端末400のクッキー情報等を保存する(ステップS31)。
すなわち、制御部240は、予約のためにサイト群300(より詳細には、対象となるポータルサイトや予約サイト)に遷移したユーザ端末400のクッキー情報や検索条件等を記憶部230に記憶する。
【0063】
予約支援サーバ200は、規定時間の計時を開始する(ステップS32)。
例えば、制御部240は、10分と定められた規定時間の計時を開始する。なお、この規定時間は、一例であり、適宜変更可能である。
【0064】
予約支援サーバ200は、保存したクッキー情報のユーザ端末400から、アクセスがあったか否かを判別する(ステップS33)。
すなわち、制御部240は、予約支援サーバ200にアクセスする何れかのユーザ端末400から、保存したクッキー情報と同じクッキー情報が、送られたかどうかを判別する。なお、保存したクッキー情報のユーザ端末400から、アクセスがあったと判別した場合に(ステップS33;Yes)、予約支援サーバ200は、遷移先のサイト群300において予約が行われなかったものとし、そのまま空席情報更新処理を終える。
【0065】
予約支援サーバ200は、保存したクッキー情報のユーザ端末400から、アクセスがないと判別すると(ステップS33;No)、規定時間が経過したか否かを判別する(ステップS34)。
つまり、制御部240は、ステップS32にて計時を開始した規定時間が経過したかどうかを判別する。
予約支援サーバ200は、規定時間が経過していないと判別すると(ステップS34;No)、上述したステップS33に処理を戻す。
【0066】
一方、規定時間が経過したと判別した場合(ステップS34;Yes)に、予約支援サーバ200は、対象の空席情報を更新する(ステップS35)。
すなわち、制御部240(空席情報更新部247)は、検索時の条件でその店舗の予約が行われたものとして、
図5の空席情報群232(対象となる空席情報)を更新する。
例えば、制御部240は、空席情報群232における空席数232d(対象となる空席数232d)から、保存した検索条件における人数を減算する。なお、空席数232dの更新は、一時的なものであり、その店舗における次の収集タイミングで、上述した空席情報収集処理により、空席情報が収集されると、空席数232dが最新の情報に上書きされる。
【0067】
このような空席情報更新処理により、予約が行われた可能性を考慮して、空席数232dを更新することにより、同様な検索条件で他のユーザ端末400から検索が行われた場合に、より適切な検索結果を提供できる。
【0068】
また、上述した空席情報更新処理では、サイト群300に遷移したユーザ端末400からのアクセスがないまま規定時間が経過した際に、検索時の条件でその店舗の予約が行われたものとして、空席情報群232の空席数232d(対象となる空席数232d)を更新する場合について説明したが、対象となる店舗の空席情報を前倒しで収集し、収集した最新の空席情報に応じて空席数232dを更新するようにしてもよい。
例えば、
図10のステップS34にて、規定時間が経過したと判別した場合(ステップS34;Yes)に、予約支援サーバ200は、サイト群300(対象となるポータルサイトや予約サイト)にアクセスして予約が行われたとされる店舗の空席情報を収集し、空席情報群232における空席数232d(対象となる空席数232d)と違いがあれば、空席数232dを最新の値に更新する。その際、検索時の条件に対応する空席数232dだけでなく、空席情報群232におけるその店舗についての全ての空席数232dを最新の値に更新してもよい。
この場合、予約のためにサイト群300に遷移することが多い店舗(人気のある店舗)については、収集タイミングよりも短い間隔で、空席情報を更新することができる。
【0069】
(他の実施形態)
上記の実施形態では、店舗の検索時において、検索条件の日時(つまり、予約したい日時)と現在の日時との時間差(つまり、予約までの残り時間)を特に考慮しない場合について説明したが、予約までの残り時間が、一定時間(例えば、数時間)よりも小さければ、検索結果画面(店舗リスト)を適宜変更して表示してもよい。
つまり、予約までの残り時間にあまり余裕がない状況において、多くの店舗を提示してしまうと、候補が多すぎてユーザが店舗を決め難くなる。そのため、予約支援サーバ200は、予約までの残り時間が一定時間よりも小さい場合に、例えば、予約の信頼度順等において上位の3店舗に絞り込んだ店舗リストの検索結果画面を生成して、ユーザ端末400に表示する。
この場合、予約の日時までに、時間的な余裕がない状況でも、ユーザが店舗を決めやすくなる。
【0070】
これに加えて、ユーザ端末400から、ユーザの現在位置が取得できている場合では、ユーザの現在位置と店舗の所在地との距離を用いて、店舗を絞り込んでもよい。例えば、予約支援サーバ200は、予約までの残り時間が一定時間よりも小さい場合に、ユーザの現在位置を中心に所定距離(一例として、数十キロメートル)を半径とした円形の範囲内に所在する店舗に絞り込んだ店舗リスト(検索結果画面)を生成して、ユーザ端末400に提示する。なお、このような円形に限られず、矩形等の範囲内に所在する店舗に絞り込んでもよい。また、ユーザが移動している場合(現在位置の変化からユーザの移動が判別できる場合)、現在位置を基準に移動方向に開いた扇形の範囲内に所在する店舗に絞り込んでもよい。その上で、予約までの残り時間が減るにつれて、円形や扇形の半径や、矩形の幅や高さを短くするなどし、残り時間が少ないほど、ユーザの現在位置からより近い店舗が絞り込まれるようにしてもよい。
この場合、予約の日時までに、時間的な余裕がない状況でも、より適切に絞り込んだ店舗リストを提供できる。
【0071】
更に、予約までの残り時間が、一定時間よりも小さければ、検索条件において並び順が指定されていない場合等でも、予約の信頼度が規定値を超えている店舗に絞り込んだ店舗リストの検索結果画面を生成して、ユーザ端末400に表示してもよい。その上で、予約までの残り時間が減るにつれて、規定値を高くするなどし、残り時間が少ないほど、予約の信頼度のより高い店舗が絞り込まれるようにしてもよい。
この場合、予約までの残り時間が少ないほど、予約が成立する確度がより高い(満席となっておらず、予約が取り易い)店舗に絞り込んだ店舗リストを提供できる。
【0072】
上記の実施形態では、店舗の空席情報を収集する際に、空席数(つまり、予約可能な人数)を特に指定せずに、全ての空席についての空席情報を、店舗に応じた収集タイミングに収集する場合について説明したが、店舗検索時に多用される人数等に応じて、空席数を指定した空席情報を収集するようにしてもよい。また、収集タイミングも、指定する空席数に応じて異ならせてもよい。
例えば、ある店舗において、2名の検索が最も多く、続いて、3名、4名の順で検索に用いられる割合が減っている場合、予約支援サーバ200は、その店舗に対して、空席数2を指定した空席情報の収集を30分毎に行い、空席数3を指定した空席情報の収集を45分毎に行い、そして、空席数4を指定した空席情報の収集を1時間毎に行う。
この場合、店舗の検索時の実情に応じて、有効な空席情報を効率よく収集することができる。
【0073】
上記の実施形態では、予約支援サーバ200側で、空席情報の収集、予約が行える信頼度の算定、店舗リストの検索、検索画面の生成、収集間隔等の設定更新、アクセス先の遷移の検出、及び、空席情報の更新等の全てを行う場合について説明したが、これらのうち、少なくとも一部の機能を、ユーザ端末400側で行うようにしてもよい。
すなわち、
図3に示す記憶部230や制御部240における全ての構成を、予約支援サーバ200側が備えるのではなく、少なくとも一部の構成をユーザ端末400側で備えるようにする。その際、ユーザ端末400側の種類(処理性能等)に応じて、ユーザ端末400側に備える構成が異なっていてもよい。
このように、予約支援サーバ200側と、ユーザ端末400側とで適宜機能を分担する場合でも、予約支援システム100全体で、店舗の予約を適切に支援することができる。
【0074】
上記の実施形態では、レストラン等の飲食店の予約を支援する予約支援システム100を一例として説明したが、このような飲食店以外の他の施設(宿泊所,遊技場等)を予約する場合においても、同様に適用可能である。また、レンタル対象物(DVD,CD,自動車等)を予約する場合においても、同様に適用可能である。
【0075】
また、上記の実施形態では、専用の予約支援サーバ200等を用いる場合について説明したが、このような予約支援サーバ200等の動作を規定する動作プログラムを既存のパーソナルコンピュータや情報端末機器等に適用することで、当該パーソナルコンピュータを予約支援サーバ200等として機能させることも可能である。
【0076】
また、このようなプログラムの配布方法は任意であり、例えば、CD−ROM、DVD、MO(Magneto Optical Disc)、メモリカード等のコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットといった通信ネットワークを介して配布してもよい。
【0077】
(まとめ)
本発明の第1の観点に係る予約支援システムは、サーバ装置(予約支援サーバ)と、ユーザ端末(スマートフォン等)と、店舗の予約が行えるサイト群(ポータルサイトや予約サイト)とがネットワークを介して通信可能に接続された予約支援システムであって、空席情報収集部、記憶部、検索部、リスト生成部、及び、提供部を備えている。
【0078】
空席情報収集部は、サイト群にアクセスし、各店舗における予約が可能な空席情報を事前に収集する。記憶部は、空席情報収集部が収集した空席情報を、サイト群における店舗の店舗情報と対応付けて記憶する。
また、検索部は、ユーザ端末にて要求された店舗の検索条件に基づいて記憶部を検索し、当該検索条件に応じた店舗情報を取得する。リスト生成部は、検索部が取得した店舗情報を含む店舗リストを、予約が行える信頼度の順に並び替える。
そして、提供部は、リスト生成部が生成した店舗リスト(検索結果画面等)を、ユーザ端末に提供する。
【0079】
このように、サイト群から事前に収集した各店舗の空席情報を基に一括検索するため、より多くの店舗の中から検索条件に応じた店舗を、より迅速に検索することができる。また、検索された店舗リストは、予約できる信頼度が高い順に並んでおり、換言すると、空席状況に余裕のない店舗(予約が取り難い店舗)の優先度が下げられているため、実際に予約を行うべく、サイト群に遷移した際に、満席で予約ができないといった不都合を減らすことができる。
この結果、店舗の予約を適切に支援することができる。
【0080】
本発明の第2の観点に係るサーバ装置(予約支援サーバ)は、ユーザ端末(スマートフォン等)、及び、店舗の予約が行えるサイト群(ポータルサイトや予約サイト)と、ネットワークを介して通信可能に接続されたサーバ装置であって、空席情報収集部、記憶部、受信部、検索部、リスト生成部、及び、送信部を備えている。
【0081】
すなわち、第2の観点に係るサーバ装置でも、第1の観点に係る予約支援システムと同様に、店舗の予約を適切に支援することができる。
【0082】
また、上記サーバ装置において、空席情報収集部が時期をずらして複数回に亘って収集した空席情報における変化傾向、若しくは、送信部がユーザ端末に送信した店舗リストを通じて行われたサイト群の店舗へのアクセス状況に基づいて、空席情報収集部が収集した空席情報の店舗に対し、予約が行える信頼度を算定する算定部を更に備え、リスト生成部は、検索部が検索した店舗情報を含む店舗リストを、算定部が算定した信頼度の順に並び替えてもよい。
この場合、予約が成立する確度がより高い(満席となっておらず、予約が取り易い)順に並べた店舗リストを提供できる。
【0083】
また、上記サーバ装置において、空席情報収集部は、各店舗に応じて変更可能に設定された収集間隔に従って、サイト群から空席情報を順次収集するものであり、送信部がユーザ端末に送信した店舗リストを通じて行われたサイト群における店舗へのアクセス状況に応じて、対応する店舗における収集間隔を変更する設定変更部を更に備えてもよい。
この場合、店舗に応じて、収集間隔を変更するため、有効な空席情報を効率よく収集することができる。
【0084】
また、上記サーバ装置において、送信部がユーザ端末に送信した店舗リストを通じて、ユーザ端末のアクセス先がサイト群の店舗に遷移したことを検出する遷移検出部と、遷移検出部が遷移を検出したユーザ端末から、規定時間内における再アクセスがない場合に、店舗リストを生成した際の前記検索条件に基づいて、記憶部に記憶される空席情報を更新する空席情報更新部と、を更に備えてもよい。
この場合、予約が行われた可能性を考慮して、空席情報を更新するため、同様な検索条件で他のユーザ端末から検索が行われた場合に、より適切な店舗リストを提供できる。
【0085】
また、上記サーバ装置において、空席情報収集部は、遷移検出部が遷移を検出したユーザ端末から、規定時間内における再アクセスがない場合に、サイト群の店舗にアクセスして空席情報を収集し、空席情報更新部は、空席情報収集部がサイト群の店舗にアクセスして収集した空席情報に応じて、記憶部に記憶される空席情報を更新してもよい。
この場合、予約のためにサイト群に遷移することが多い店舗(人気のある店舗)については、収集間隔よりも短い間隔で、空席情報を更新することができる。
【0086】
本発明の第3の観点に係る店舗検索方法は、ユーザ端末(スマートフォン等)、及び、店舗の予約が行えるサイト群(ポータルサイトや予約サイト)と、ネットワークを介して通信可能に接続されたサーバ装置における店舗検索方法であって、空席情報収集ステップ、格納ステップ、受信ステップ、検索ステップ、リスト生成ステップ、及び、送信ステップを備えている。
【0087】
すなわち、第3の観点に係る店舗検索方法は、第1の観点に係る予約支援システムと同様に、店舗の予約を適切に支援することができる。
【0088】
本発明の第4の観点に係るプログラムは、ユーザ端末(スマートフォン等)、及び、店舗の予約が行えるサイト群(ポータルサイトや予約サイト)と、ネットワークを介して通信可能に接続されたコンピュータを、空席情報収集部、記憶部、受信部、検索部、リスト生成部、及び、送信部として機能させる。
【0089】
すなわち、第4の観点に係るプログラムは、第1の観点に係る予約支援システムと同様に店舗の予約を適切に支援することができる。
【解決手段】空席情報収集部241は、サイト群にアクセスし、各店舗における予約が可能な空席情報を事前に収集する。記憶部230は、収集された空席情報を、サイト群における店舗の店舗情報と対応付けた空席情報群232を記憶する。受信部210は、ユーザ端末から送られる店舗の検索条件を受信する。検索部243は、受信した検索条件に基づいて空席情報群232を検索し、その検索条件に応じた店舗情報を取得する。画面生成部244は、検索により得られた店舗情報を含む店舗リストを、予約が行える信頼度の順に並び替えた検索結果画面を生成する。そして、送信部220は、生成された検索結果画面をユーザ端末に送信する。