(57)【要約】      （修正有）【課題】出発地から目的地までの移動中に、食事に適した時間帯に利用可能な飲食店を提案可能なシステムを提供する。【解決手段】情報処理装置の制御部は、次の処理を行う。ユーザの食事時間帯が、上記ユーザを乗せてルート検索サーバの検索結果であるルート１〜ルート３を出発地から目的地へ移動する移動体の出発予定時刻と到着予定時刻との間に含まれることを判断する。食事時間帯に移動体が移動している場所Ｐ１〜Ｐ３を推定する。推定した移動体が移動している場所から第１の距離内にあり、かつ、移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から飲食店検索の検索条件を生成する。【選択図】図７
2018132517.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの食事時間帯が、前記ユーザを乗せて移動する移動体の出発予定時刻と前記移動体の到着予定時刻との間に含まれることを判断し、
前記食事時間帯に前記移動体が移動している場所を推定し、
推定した前記移動体が移動している場所から第１の距離内にあり、かつ、前記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する
制御部を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記制御部は、前記食事時間帯が、前記出発予定時刻又は前記到着予定時刻に所定の閾値よりも近い場合に、前記出発予定時刻又は前記到着予定時刻から前記食事時間帯までの時間が前記所定の閾値以上の間隔となるように、前記食事時間帯を遠ざける
情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置であって、
前記制御部は、
前記移動体の出発地と目的地とを結ぶ複数のルートのルート検索を行い、
前記ルート検索の検索結果のそれぞれについて、前記食事時間帯に前記移動体が移動している場所を推定し、
前記ルート検索の検索結果のそれぞれについて、前記飲食店検索をし、
前記複数のルートのうち、前記飲食店検索により抽出される前記飲食店情報が最も多いルートを提示する
情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記制御部は、前記飲食店情報が最も多いルートの提示と同時に、前記ルート検索に基づいて得られた前記出発地と前記目的地とを最短で結ぶルートを提示する
情報処理装置。
【請求項５】
請求項１から４のいずれかに記載の情報処理装置であって、
前記制御部は、前記飲食店検索の検索結果を出力する際、前記移動体の出発地と目的地にそれぞれ対応する出発地の表示エレメント及び目的地の表示エレメントを表示出力するとともに、前記飲食店検索の検索結果の表示出力へリンクする飲食店検索結果への表示エレメントも表示出力する
情報処理装置。
【請求項６】
請求項５に記載の情報処理装置であって、
前記制御部は、
前記移動体により移動する前記ユーザを含むグループの人数情報を取得し、
前記飲食店検索結果への表示エレメントによりリンクされた前記飲食店検索の検索結果の表示出力を介して前記ユーザにより選択された飲食店へ、前記人数情報と共に予約要求を送信する
情報処理装置。
【請求項７】
請求項１から６のいずれかに記載の情報処理装置であって、
前記制御部は、
前記飲食店検索の検索結果が所定の最少店舗数より少ない場合に、前記食事時間帯をより遅い時間帯に変更し、
変更後の前記食事時間帯に前記移動体が移動している場所を推定し、
推定した場所に基づいて、前記飲食店検索をする
情報処理装置。
【請求項８】
請求項１から８のいずれかに記載の情報処理装置であって、
前記制御部は、前記出発予定時刻と前記到着予定時刻との間に、前記食事時間帯が複数含まれる場合、１の前記食事時間帯に対する前記飲食店検索において検索結果にフィルターをかけるためのパラメータの一つを、他の前記食事時間帯に対する前記飲食店検索においては前記１の前記食事時間帯における値と異なる値とする
情報処理装置。
【請求項９】
請求項１から９のいずれかに記載の情報処理装置であって、
前記制御部は、前記ユーザが複数の前記移動体を乗り継いで移動し、前記移動体の乗り継ぎ予定時刻が前記食事時間帯から所定の時間範囲内である場合に、前記乗り継ぎ予定時刻における前記ユーザの位置に基づいて飲食店検索をする
情報処理装置。
【請求項１０】
請求項１から１０のいずれかに記載の情報処理装置であって、
前記制御部は、
前記飲食店検索により抽出された飲食店がない場合に、前記食事時間帯に前記移動体が移動している場所から前記移動体の目的地までの間にある飲食店を前記飲食店検索に基づいて抽出し、
前記食事時間帯に前記移動体が移動している場所から前記移動体の目的地までの間にある飲食店が抽出されない場合に、前記移動体の出発地から前記食事時間帯に前記移動体が移動している場所までの間にある飲食店を前記飲食店検索に基づいて抽出し、
抽出された飲食店のうち、前記食事時間帯に前記移動体が移動している場所に最も近い飲食店を最後の飲食店として出力する
情報処理装置。
【請求項１１】
請求項１から１０のいずれかに記載の情報処理装置であって、
複数の前記飲食店情報を記憶する記憶部を具備し、
前記制御部は、前記飲食店検索として、前記記憶部に記憶されている前記複数の前記飲食店情報から条件に合致する飲食店を抽出する
情報処理装置。
【請求項１２】
通信部と制御部を具備する情報処理装置であって、
前記通信部は、
外部のユーザ端末から、ユーザを乗せて移動する移動体の出発予定時刻、到着予定時刻、当該移動体の種類を受信し、
前記制御部は、
前記ユーザの食事時間帯が、前記出発予定時刻と前記到着予定時刻との間に含まれることを判断し、
前記移動体の種類に基づいて前記食事時間帯に前記移動体が移動している場所を推定し、
推定した前記移動体が移動している場所から第１の距離内にあり、かつ、前記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索をし、
前記通信部は、
前記飲食店検索の検索結果を前記ユーザ端末に送信する
情報処理装置。
【請求項１３】
ユーザの食事時間帯が、前記ユーザを乗せて移動する移動体の出発予定時刻後であること、又は、前記移動体の到着予定時刻前であることの、少なくともいずれか一方に該当することを判断し、
前記食事時間帯に前記移動体が移動している場所を推定し、
推定した前記移動体が移動している場所から第１の距離内にあり、かつ、前記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する
制御部を具備する情報処理装置。
【請求項１４】
情報処理装置の処理部が実行する情報処理方法であって、
ユーザの食事時間帯が、前記ユーザを乗せて移動する移動体の出発予定時刻と前記移動体の到着予定時刻との間に含まれることを判断し、
前記食事時間帯に前記移動体が移動している場所を推定し、
推定した前記移動体が移動している場所から第１の距離内にあり、かつ、前記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する
情報処理方法。
【請求項１５】
情報処理装置の処理部に、
ユーザの食事時間帯が、前記ユーザを乗せて移動する移動体の出発予定時刻と前記移動体の到着予定時刻との間に含まれることを判断する手順と、
前記食事時間帯に前記移動体が移動している場所を推定する手順と、
推定した前記移動体が移動している場所から第１の距離内にあり、かつ、前記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する手順
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、飲食店情報をユーザに提供可能に構成される情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
出発地と目的地とを指定すると情報を提示するシステムの技術分野において、従来技術は、目的地周辺の各種サービスの検索を行うのが普通である。例えば、特許文献１や特許文献２は目的地周辺の適切な駐車場を運転手に提示する技術が開示されている。ここでは駐車場を時間貸しするというサービスに関して、いずれも目的地周辺のサービスが検索されている。
【０００３】
特許文献３には、カー・ナビゲーション装置において、食事時間帯に食事処が多く道路沿いにある経路を誘導経路として設定することを課題として、誘導経路の検索をする時刻と目的地到着時刻との間に食事開始時間帯が含まれる場合に、その食事開始時間帯に、より多くの食事処が通過予定の道路沿いにある経路を探索することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２１１７０５号公報
【特許文献２】特開２０１６−０２４１６６号公報
【特許文献３】特開２００５−０３７１４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら上述のような従来技術では、上記サービスが一日のうちでおおむね決まった時間に行われるもの（例えば、昼食）を提供するサービスである場合、その決まった時間から大きく外れた時刻にサービスの提供を提案しても意義が薄い（ランチタイムを過ぎておすすめランチを提示しても意味がない）ため、適切な提案にならないことがある。また、出発地から目的地への移動途中に寄り道をして新しい良質な飲食店を見つけたいというニーズもあるところ、上述のような従来技術ではこのようなニーズに対応できない。
【０００６】
これらの事情に鑑み、本発明は、出発地や目的地から離れたところでの食事の提案が可能な情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成する本技術の一側面は、以下の処理を行う制御部を具備する情報処理装置である。
・ユーザの食事時間帯が、上記ユーザを乗せて移動する移動体の出発予定時刻と上記移動体の到着予定時刻との間に含まれることを判断する。
・上記食事時間帯に上記移動体が移動している場所を推定する。
・推定した上記移動体が移動している場所から第１の距離内にあり、かつ、上記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する。
【０００８】
上記構成によれば、食事に適した時間帯に相当する「食事時間帯」に、ユーザを乗せて移動する移動体が移動している場所を推定し、その場所から第１の範囲内にあり、かつ、移動体の出発地と目的地の少なくともいずれか一方から第２の範囲離れた場所に位置する飲食店を検索することにより、出発地から目的地までの移動中に寄り道をして新しい飲食店を探すことが可能になる。
【０００９】
上記制御部は、上記食事時間帯が、上記出発予定時刻又は上記到着予定時刻に所定の閾値よりも近い場合に、上記出発予定時刻又は上記到着予定時刻から上記食事時間帯までの時間が上記所定の閾値以上の間隔となるように、上記食事時間帯を遠ざけてもよい。
【００１０】
上記構成によれば、出発予定時刻又は到着予定時刻に、食事時間帯があまりにも近い場合は食事時間帯をシフトさせて、出発地又は目的地に近い検索結果をユーザに提供することができるようになる。
【００１１】
上記制御部は、次の処理を行ってもよい。
・上記移動体の出発地と目的地とを結ぶ複数のルートのルート検索を行う。
・上記ルート検索の検索結果のそれぞれについて、上記食事時間帯に上記移動体が移動している場所を推定する。
・上記ルート検索の検索結果のそれぞれについて、上記飲食店検索をする
・上記複数のルートのうち、上記飲食店検索により抽出される上記飲食店情報が最も多いルートを提示する。
【００１２】
上記構成によれば、ルート検索において複数のルートを検索し、複数のルート候補から飲食店情報を最も多く抽出することが可能なルート候補を提示することにより、ユーザに相対的に多様な選択肢を提供することが可能になる。
【００１３】
上記制御部は、上記飲食店情報が最も多いルートの提示と同時に、上記ルート検索に基づいて得られた上記出発地と上記目的地とを最短で結ぶルートを提示してもよい。
【００１４】
上記構成によれば、飲食店情報を最も多く抽出することが可能なルート候補と同時に、最短ルート候補を提示することにより、多様な選択肢を示すだけでなく最短ルートという利便性の高いルート上の選択肢も示すことが可能になる。
【００１５】
上記制御部は、上記飲食店検索の検索結果を出力する際、上記移動体の出発地と目的地にそれぞれ対応する出発地の表示エレメント及び目的地の表示エレメントを表示出力するとともに、上記飲食店検索の検索結果の表示出力へリンクする飲食店検索結果への表示エレメントも表示出力してもよい。
【００１６】
上記構成によれば、出発地と目的地、それぞれの表示エレメントの間に、上述の移動ルート上にある飲食店検索による検索結果を表示させるための表示エレメントが配置されたユーザインタフェースを提供することができる。
【００１７】
上記制御部は、次の処理を行ってもよい。
・上記移動体により移動する上記ユーザを含むグループの人数情報を取得する。
・上記飲食店検索結果への表示エレメントによりリンクされた上記飲食店検索の検索結果の表示出力を介して上記ユーザにより選択された飲食店へ、上記人数情報と共に予約要求を送信する。
【００１８】
上記構成によれば、移動体に乗るユーザグループの人数を取得し、その人数で検索した飲食店の予約を行うことが可能になる。
【００１９】
上記制御部は、次の処理を行ってもよい。
・上記飲食店検索の検索結果が所定の最少店舗数より少ない場合に、上記食事時間帯をより遅い時間帯に変更する。
・変更後の上記食事時間帯に上記移動体が移動している場所を推定する。
・推定した場所に基づいて、上記飲食店検索をする。
【００２０】
上記構成によれば、検索結果が相対的に（所定の店舗数より）少ない場合に、検索する位置を移動体の移動ルートに沿ってシフトさせることにより、移動ルートを外れることなく、検索結果を異ならせることができる。
【００２１】
上記制御部は、上記出発予定時刻と上記到着予定時刻との間に、上記食事時間帯が複数含まれる場合、１の上記食事時間帯に対する上記飲食店検索において検索結果にフィルターをかけるためのパラメータの一つを、他の上記食事時間帯に対する上記飲食店検索においては上記１の上記食事時間帯における値と異なる値としてもよい。
【００２２】
上記構成によれば、ユーザが移動する間に複数の食事時間帯が含まれる場合、各食事時間帯において検索するメニューなど、パラメータの一つを異ならせて、ユーザに提案する飲食店の種類や提供する食事のジャンルなどの多様性を確保することができる。
【００２３】
また、上記制御部は、上記ユーザが複数の上記移動体を乗り継いで移動し、上記移動体の乗り継ぎ予定時刻が上記食事時間帯から所定の時間範囲内である場合に、上記乗り継ぎ予定時刻における上記ユーザの位置に基づいて飲食店検索をしてもよい。
【００２４】
上記構成によれば、ユーザが移動体の乗り継ぎをする場合に、乗り継ぎ時刻が食事時間帯を外れていても、所定の時間範囲内であれば、乗り継ぎ時刻におけるユーザの位置に基づいて飲食店を検索するため、合理的なタイミングで食事をすることのできる飲食店検索機能をユーザに提供することができる。
【００２５】
上記制御部は、次の処理を行ってもよい。
・上記飲食店検索により抽出された飲食店がない場合に、上記食事時間帯に上記移動体が移動している場所から上記移動体の目的地までの間にある飲食店を前記飲食店検索に基づいて抽出する。
・上記食事時間帯に上記移動体が移動している場所から上記移動体の目的地までの間にある飲食店が抽出されない場合に、上記移動体の出発地から上記食事時間帯に上記移動体が移動している場所までの間にある飲食店を上記飲食店検索に基づいて抽出する。
・抽出された飲食店のうち、上記食事時間帯に上記移動体が移動している場所に最も近い飲食店を最後の飲食店として出力する。
【００２６】
上記構成によれば、目的地がキャンプ場や山奥である場合など、飲食店の存在が見込めないような場合に、利用可能な飲食店を優先的に提案することが可能になる。
また、上記情報処理装置は、上記データベースを記憶する記憶部をさらに具備してもよい。
【００２７】
上記情報処理装置は、複数の上記飲食店情報を記憶する記憶部をさらに具備してもよい。
この場合、上記制御部は、上記飲食店検索として、上記記憶部に記憶されている上記複数の上記飲食店情報から条件に合致する飲食店を抽出する。
なお、複数の上記飲食店情報はデータベースに正規化された状態で記憶されていてもよい。
【００２８】
上記課題は、本技術の別の一側面に係る情報処理装置によっても解決される。
当該情報処理装置は、通信部と制御部を具備する。
上記通信部は、外部のユーザ端末から、ユーザを乗せて移動する移動体の出発予定時刻、到着予定時刻、当該移動体の種類を受信する。
上記制御部は、上記ユーザの食事時間帯が、上記出発予定時刻と上記到着予定時刻との間に含まれることを判断する。
上記制御部は、上記移動体の種類に基づいて上記食事時間帯に上記移動体が移動している場所を推定する。
上記制御部は、推定した上記移動体が移動している場所から第１の距離内にあり、かつ、上記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索をする。
上記通信部は、上記飲食店検索の検索結果を上記ユーザ端末に送信する。
【００２９】
上記課題は、本技術の別の一側面に係る情報処理装置によっても解決される。
当該情報処理装置は、制御部を具備する。
上記制御部は、ユーザの食事時間帯が、前記ユーザを乗せて移動する移動体の出発予定時刻後であること、又は、前記移動体の到着予定時刻前であることの、少なくともいずれか一方に該当することを判断する。
上記制御部は、前記食事時間帯に前記移動体が移動している場所を推定する。
上記制御部は、推定した前記移動体が移動している場所から第１の距離内にあり、かつ、前記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する。
【００３０】
また、本技術の別の一側面は、情報処理装置の処理部が実行する情報処理方法である。
上記処理部は、次の処理を実行する。
・ユーザの食事時間帯が、上記ユーザを乗せて移動する移動体の出発予定時刻と上記移動体の到着予定時刻との間に含まれることを判断する。
・上記食事時間帯に上記移動体が移動している場所を推定する。
・推定した上記移動体が移動している場所から第１の距離内にあり、かつ、上記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する。
【００３１】
また、本技術の別の一側面は、情報処理装置の処理部に、次の処理を実行させるプログラムである。
・ユーザの食事時間帯が、上記ユーザを乗せて移動する移動体の出発予定時刻と上記移動体の到着予定時刻との間に含まれることを判断する手順。
・上記食事時間帯に上記移動体が移動している場所を推定する手順。
・推定した上記移動体が移動している場所から第１の距離内にあり、かつ、上記移動体の出発地と目的地の少なくともいずれか一方から第２の距離離れた場所に位置する飲食店を、位置情報と関連付けられた飲食店情報から抽出する飲食店検索の検索条件を生成する手順。
【発明の効果】
【００３２】
以上、本技術によれば、出発地や目的地から離れたところでの食事の提案が可能な情報処理装置、情報処理方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００３３】
【図１】本技術の一実施形態に係る飲食店情報提供システムの構成を示す図である。
【図２】図１に含まれるサーバやユーザ端末のハードウェア構成例を示す図である。
【図３】図２に示される店舗データベースのデータ構造の一例を示す図である。
【図４】上記飲食店情報提供システムのソフトウェアプログラム構成例を示す図である。
【図５】上記飲食店情報提供システムのユースケース図である。
【図６】図１のユーザ端末のルート検索用の表示画面の一例を示す図である。
【図７】上記飲食店情報提供サーバの情報処理を説明するための概念図である。
【図８】図１に含まれる飲食店情報提供サーバが実行する処理の流れの一例を示す図である。
【図９】図８における飲食店検索処理の流れの一例を示す図である。
【図１０】図９における検索結果の調整処理の流れの一例を示す図である。
【図１１】図１の飲食店情報提供サーバにより構成される表示出力画面の一例を示す図である。
【図１２】図１の飲食店情報提供サーバにより構成される表示出力画面の一例を示す図である。
【発明を実施するための形態】
【００３４】
以下、本技術に係る実施形態を、図面を参照しながら説明する。
【００３５】
＜第１の実施形態＞
【００３６】
＜ハードウェア構成例＞
図１を参照すると、本実施形態に係る飲食店情報提供システム１のネットワーク構成例が示されている。図示のように、本実施形態に係る飲食店情報提供システム１は、飲食店情報提供サーバ１００が、インターネット５０を媒介として、ユーザ端末２００と通信可能に構成されている。飲食店情報提供サーバ１００は、本技術に係る情報処理装置を実現するハードウェアリソースの、本実施形態における一例である。
【００３７】
図１において、飲食店情報提供サーバ１００は、ルート検索サーバ１１０を利用可能に構成されている。ルート検索サーバ１１０は地理情報データベース３１（図４で図示）を有する。ルート検索サーバ１１０は、アプリケーションプログラムインターフェイスなどを介して、飲食店情報提供サーバ１００を含む他のサーバから出発地の地理情報と目的地の地理情報とを少なくともパラメータにしたルート検索指示コマンドを受信すると、出発地と目的とを結ぶ、１以上複数のルートＲを返す。
【００３８】
なお、インターネット５０は本実施形態における、飲食店情報提供サーバ１００とユーザ端末２００を媒介するネットワークの一例であり、そのようなネットワークには移動体無線通信の基地局同士を結ぶネットワークや、イントラネットなどが含まれていてもよい。
【００３９】
なお、ユーザ端末２００とは、図１に示すユーザＡが使うユーザ端末２００Ａ，ユーザＢが使うユーザ端末２００Ｂ，ユーザＣが使うユーザ端末２００Ｃ，・・・のいずれか少なくとも１つ以上が、推定せずに言及された場合の呼び名である。
【００４０】
本実施形態においては、ユーザが移動体３００に乗って出発地から目的地まで移動することを想定する。しかしながら、飲食店情報提供システム１の一部ないし全部が移動体３００に物理的ないし機能的に含まれることは必須ではない。図１では、飲食店情報提供システム１の一部としてユーザ端末２００が示されている。
【００４１】
図１中、ユーザ端末２００Ｂは一例として車載型のユーザ端末２００を示している。ユーザ端末２００Ｂは移動体３００Ｂに積載されており、例えばカー・ナビゲーション端末としての機能を有していてもよい。
【００４２】
図２を参照すると、飲食店情報提供サーバ１００やユーザ端末２００のハードウェア構成例が示されている。以下では、図２に示す構成例は飲食店情報提供サーバ１００のものであることとして説明する。図示のように、飲食店情報提供サーバ１００のハードウェアは、バス１４を介してＣＰＵ（Central Processing Unit: 中央演算装置）１１、ＲＯＭ（Read Only Memory: 読み出し専用記憶装置）１２、ＲＡＭ（Random Access Memory: ランダムアクセスメモリ）１３が接続されて処理制御部を構成してもよい。
【００４３】
バス１４に接続された各種ハードウェアにより構成される処理制御部はさらに、入出力インタフェース１５に接続されていてもよい。入出力インタフェース１５は、表示部１６、操作受付部１７、記憶部１８、通信部１９に接続していてもよい。
【００４４】
入出力インタフェース１５に接続された各種ハードウェアは、飲食店情報提供サーバ１００に情報を入出力する入出力部として機能する。飲食店情報提供サーバ１００への情報の入出力には、バス１４に接続された各種ハードウェアにより構成される処理制御部への情報の入出力という態様を含む。
【００４５】
表示部１６は、飲食店情報提供サーバ１００に表出力の機能を提供し、具体的には例えば液晶ディスプレイとグラフィックコントローラなどの組み合わせにより実現される。操作受付部１７は、飲食店情報提供サーバ１００にユーザ操作の入力の機能を提供し、具体的には例えば液晶タッチパネルやキーボードデバイスなどにより実現される。
【００４６】
記憶部１８は、飲食店情報提供サーバ１００に二次記憶の機能を提供し、具体的には例えばハードディスクデバイスやＳＳＤ（Solid State Disks）などにより実現される。通信部１９は、飲食店情報提供サーバ１００に外部装置との通信機能や、当該通信機能を用いて情報を入出する機能などを提供する。通信部１９は、具体的には例えば、ローカルエリアネットワークデバイスにより実現され、その場合は有線／無線といった物理層の別を問わず実施可能である。
【００４７】
また、記憶部１８は店舗データベース３２を有する。図３を参照すると、店舗データベース３２のデータ構造の一例が示されている。なお、記憶部１８に記憶されている情報とは、飲食店情報提供サーバ１００が保持するデータと捉えてもよい。なお、店舗データベース３２は、外部のデータサーバ（不図示）が有し、ＣＰＵ１１が随時、外部のデータサーバに検索問い合わせを発行する構成としても、この実施形態と同等の効果が得られる。
【００４８】
図３を参照すると、店舗データベース３２に格納される店舗ごとの情報のデータ構造の一例が示されている。店舗データベース３２は、飲食店情報提供サーバ１００にあらかじめ登録されている店舗ごとに、店舗識別情報、店名、種別、位置情報などを記憶する。ここで種別とは店舗が提供する料理の傾向（イタリアン、和食、中華など）やサービス提供形態（居酒屋、ファーストフード、ビュッフェスタイルなど）などを意味する。種別は料理の傾向とサービス提供形態などの情報の組み合わせでもよい。
【００４９】
図３に記載の「位置情報」は、緯度と経度などで示される地理座標系を含む。位置情報は、その他に、町名と番地や街路名と番地などで表される所在地情報を含んでもよい。また、位置情報は高さ方向の情報（店舗の所在する階など）を含んでもよい。
【００５０】
上述のハードウェア構成が採用されることの技術的効果について述べる。本実施形態では飲食店情報提供サーバ１００が、複数のユーザ端末２００からのトラフィックを一手に引き受けることによって、ハードウェアリソースの節約になる。例えば、飲食店情報提供サーバ１００が実行する情報処理をユーザ端末２００がすべて実行することで、ユーザ端末２００単一で本技術の作用効果を発揮させることも可能である。しかしながら、このような態様と比較して、図１ないし図３で述べたようなハードウェア構成を採用することで、複数のユーザ端末２００のそれぞれに、飲食店情報提供サーバ１００が実行する情報処理が実行可能なだけのリソースを用意する必要がなくなる。
【００５１】
＜ソフトウェアプログラム構成例＞
図４に本実施形態のソフトウェアプログラム構成の一例を示す。図示の構成例は、図１ないし図３で示したハードウェアリソースを利用して所定の情報処理を行うソフトウェアプログラムを示したものであって、ハードウェアリソースの構成を変更した場合は、その変更に合わせてソフトウェアプログラム構成も変更されうる。
【００５２】
図４に示すように、モバイルオペレーティングシステム２０１が実行されているユーザ端末２００は、ルート検索アプリケーション２０２がその上で実行されている。
【００５３】
図４に示すように、一方で、飲食店情報提供サーバ１００はソフトウェアとして、サーバオペレーティングシステム１０１が実行されている。サーバオペレーティングシステム１０１の上ではルート検索ＡＰＩ（アプリケーション・プログラム・インターフェイス）１０２と飲食店検索ＡＰＩ１０３が実行されている。
【００５４】
以下、各ソフトウェアプログラムの基本的な機能を説明する。
ルート検索アプリケーション２０２は、ルート検索ＡＰＩ１０２や飲食店検索ＡＰＩ１０３とプロセス間通信を行い、データや情報の送受信を行う。
【００５５】
ルート検索ＡＰＩ１０２は、ルート検索アプリケーション２０２や他のＡＰＩを含む外部から、出発地と目的地のそれぞれ位置情報をパラメータとして与えられると、それに基づいて、出発地の地理情報と目的地の地理情報とを少なくともパラメータにしたルート検索指示コマンドをルート検索サーバ１１０に送信する。ルート検索ＡＰＩ１０２は、戻り値を例えば地図などに重畳させて表示画面を生成する。表示画面はルート検索アプリケーション２０２に送信されてもよい。
【００５６】
飲食店検索ＡＰＩ１０３は、ルート検索ＡＰＩ１０２やルート検索アプリケーション２０２を含む外部から、地理情報や検索範囲をパラメータに、店舗検索指示コマンドを受信すると、店舗データベース３２を検索し、条件に合致する店舗情報を返す。
【００５７】
本実施形態においては、飲食店情報提供サーバ１００で実行されるサーバオペレーティングシステム１０１を含むソフトウェアプログラム群が、図１ないし図３を参照しながら説明したハードウェアリソースを利用して以下に詳述するような手順の情報処理を各種ハードウェアの特にＣＰＵ１１に実行させることによって、その機能の提供を実現する。
【００５８】
＜ユースケース＞
以下ではまず、本実施形態に係る飲食店情報提供システム１のユースケースの概略を説明し、次に、飲食店情報提供サーバ１００とユーザ端末２００がそれぞれ実行する処理について述べる。
【００５９】
図５を参照すると、飲食店情報提供システム１のユースケース図が示されている。図示のように、ユーザは飲食店情報提供システム１を利用する利用主体として、「ルート検索をする」「『寄り道検索』をする」「店舗予約をする」といった操作をすることができる。飲食店情報提供システム１はこれらユーザ操作に対して、「ルート検索の実行」「『寄り道検索』の実行」「店舗予約の実行」といった機能を提供する。なお、図５に開示したユースケースは一例に過ぎず、飲食店情報提供システム１はこれらの他にも多様な機能を提供可能なシステムとして構成されてもよい。
【００６０】
ここで「寄り道検索」とは、ユーザが行楽や旅行、出張など、移動体３００に乗って移動する途中で、寄り道をして食事をするための飲食店を、飲食店情報提供システム１が検索してユーザに情報提供する機能を指す。
【００６１】
「ルート検索をする」機能を提供するための飲食店情報提供システム１側の処理としては、ユーザ端末２００が出発地と目的地などルート検索に必要な情報をユーザに入力させるためのユーザインタフェースを提示する処理、同ユーザインタフェースを介して収集された情報に基づいて、飲食店情報提供サーバ１００がルート検索サーバ１１０に出発地と目的地とをパラメータにして問い合わせ実行する処理などが含まれる。
【００６２】
「『寄り道検索』をする」機能を提供するための飲食店情報提供システム１側の処理としては、ユーザ端末２００が「寄り道検索」の実行をユーザに指示させるためのユーザインタフェースを提示する処理、同ユーザインタフェースを介して「寄り道検索」の実行が指示された場合に飲食店情報提供サーバ１００が店舗データベース３２を検索する処理、検索結果をユーザ端末２００がユーザに表示出力する処理などが含まれる。
【００６３】
「店舗予約をする」機能を提供するための飲食店情報提供システム１側の処理としては、ユーザ端末２００が検索条件の変更に必要な情報をユーザに入力させるためのユーザインタフェースを提示する処理、同ユーザインタフェースを介して収集された情報に基づいて、飲食店情報提供サーバ１００が検索条件を再設定する処理や、上記「検索の実行」機能の提供における飲食店情報提供サーバ１００が実行する処理を再度行う処理などが含まれる。
【００６４】
以上の各機能は、個別にユーザに提供されてもよいが、以下の説明においては、飲食店情報提供システム１がルート検索機能を提供する際に、「寄り道検索」をする機能を組み合わせた態様が開示される。この態様によれば、ルート検索機能に高付加価値が与えられるという相乗的な効果がもたらされる。
【００６５】
＜ルート検索ユーザインタフェース＞
図６にユーザ端末２００のルート検索用の表示画面の一例を示す。飲食店情報提供システム１は、ユーザがルート検索機能を利用する際に、図６に示すようなユーザインタフェースを提供する。この際、飲食店情報提供サーバ１００が表示画面を構成し、その表示画面をユーザ端末２００が、ルート検索アプリケーション２０２の表示画面として出力する。
【００６６】
図６において、表示画面２１０は、ルート検索アプリケーション２０２の表示画面である。表示画面２１０は、出発地入力部２１１、現在地入力部２１２、到着地入力部２１３、現在地入力部２１４、検索実行指示部２１５といった表示エレメントを含んで構成されてもよい。
【００６７】
出発地入力部２１１は、出発予定地をユーザが入力するために提供されるユーザインタフェースであって、緯度経度のような地理情報や地名をフリーワードで入力する形態でもよいし、プルダウン式に選択するような形態でもよい。現在地入力部２１２は、ユーザがこれを選択するとＧＰＳ（Global Positioning System）などにより取得した地理情報を出発地入力部２１１に自動的に入力する。
【００６８】
到着地入力部２１３は、到着予定地をユーザが入力するために提供されるユーザインタフェースであって、緯度経度のような地理情報や地名をフリーワードで入力する形態でもよいし、プルダウン式に選択するような形態でもよい。現在地入力部２１４は、ユーザがこれを選択するとＧＰＳ（Global Positioning System）などにより取得した地理情報を到着地入力部２１３に自動的に入力する。
【００６９】
検索実行指示部２１５は、出発地入力部２１１と到着地入力部２１３により設定された検索条件をそれぞれ、「出発地」、「到着地」というパラメータとして、飲食店情報提供サーバ１００に送信するためのユーザインタフェースである。飲食店情報提供サーバ１００はこれらのパラメータとルート検索の実行指示の入力を受けて、以下に説明する動作を実行する。
【００７０】
＜飲食店情報提供サーバの動作＞
以下、図７ないし図１０を参照しながら、飲食店情報提供サーバ１００が実行する情報処理の流れについて説明する。図７は、飲食店情報提供サーバ１００が実行する情報処理の内容を説明するための概念図である。図８は、図１に含まれる飲食店情報提供サーバが実行する処理の流れの一例を示す図である。図９は、図８における飲食店検索処理の流れの一例を示す図である。図１０は、図９における検索結果の調整処理の流れの一例を示す図である。
【００７１】
図７に示すように、以下の本実施形態の情報処理によると、出発地から目的地まで、通常は１以上複数のルートが検索される。図７中ではルート１、ルート２、ルート３と示されているのが、ルート検索サーバ１１０から出力されてくるルート検索の検索結果である。
【００７２】
図８を参照しながら説明されるルート検索によれば、地理的に最短となるルート、時間的に最短となるルート、移動が楽（例えば交差点で道を変える回数が相対的に少ない、乗り換え回数が少ないなど）なルート、といった複数のルートが検索結果として出力される。
【００７３】
図９を参照しながら説明される飲食店情報検索処理によれば、各ルートに対して飲食店情報検索がなされる。図７中、Ｐで示される食事時間帯Ｔ３（後述）における移動体３００の移動地点から第１の範囲にある飲食店が、検索される。以下、具体的な情報処理について、図８ないし図１０を参照しながら説明する。
【００７４】
図８を参照すると、飲食店情報提供サーバ１００のＣＰＵ１１が実行する処理の手順が示されている。図示のように、飲食店情報提供サーバ１００（ＣＰＵ１１）は、ルート検索要求をルート検索サーバ１１０に送信する（Ｓ１１）。
【００７５】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、ルート検索要求をルート検索サーバ１１０から受信する（Ｓ１２）。
【００７６】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、ルート検索サーバ１１０から受信した１以上複数のルート検索結果の各々に対して、検索条件を生成し、その検索条件で飲食店検索処理を実行する（Ｓ１３）。ここで実行される飲食店検索処理は、図９に示す手順で行う。
【００７７】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、Ｓ１２で得られたルート検索サーバ１１０から受信した１以上複数のルート検索結果と、Ｓ１３で得られた飲食店検索処理の検索結果に基づいて、表示出力画面を構成し、ユーザ端末２００に対して出力する（Ｓ１４）。
【００７８】
図９を参照すると、飲食店情報提供サーバ１００のＣＰＵ１１が実行する飲食店検索処理の手順が示されている。図示のように、まず、飲食店情報提供サーバ１００（ＣＰＵ１１）は、飲食店検索処理において用いる変数の定義をする（Ｓ２１）。
【００７９】
Ｓ２１において、Ｔ１は出発予定時刻、Ｔ２は到着予定時刻、Ｔ３は食事時間帯、Ｔ４は食事時間帯Ｔ３と出発予定時刻Ｔ１又は到着予定時刻Ｔ２が近接するか否かを判断する閾値である。飲食店情報提供サーバ１００（ＣＰＵ１１）は、ルート検索サーバ１１０から受信したルート検索結果に含まれる出発予定時刻と到着予定時刻をＴ１とＴ２として用いる。なお、到着予定時刻Ｔ２については、食事時間帯Ｔ３の長さ（例えば１時間など）を加算してもよい。
【００８０】
Ｓ２１において、食事は基本的に、毎日決まった時間帯に行われるため、食事時間帯Ｔ３は飲食店情報提供システム１により、所定の値に決定されてもよい。食事の習慣には個人的、文化的な差異がある場合があるので、飲食店情報提供システム１は食事時間帯Ｔ３をユーザが変更することのできるユーザインタフェースを備えてもよい。また、閾値Ｔ４も飲食店情報提供システム１により、所定の値に決定されてもよい。飲食店情報提供システム１は閾値Ｔ４についても同様に、変更することのできるユーザインタフェースを備えてもよい。
【００８１】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、食事時間帯Ｔ３が出発予定時刻Ｔ１と到着予定時刻Ｔ２の間に含まれるか否かを判断する（Ｓ２２）。含まれない場合（Ｓ２２，Ｎｏ）は飲食店検索処理が終了し、飲食店情報提供サーバ１００（ＣＰＵ１１）は図８のＳ１４に遷移する。
【００８２】
食事時間帯Ｔ３が出発予定時刻Ｔ１と到着予定時刻Ｔ２の間に含まれる場合（Ｓ２２，Ｙｅｓ）、続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、食事時間帯Ｔ３と出発予定時刻Ｔ１又は到着予定時刻Ｔ２が近接するか否かを閾値Ｔ４に基づいて判断する（Ｓ２３）。
【００８３】
食事時間帯Ｔ３と出発予定時刻Ｔ１又は到着予定時刻Ｔ２が近接すると判断される場合（Ｓ２３，Ｙｅｓ）、飲食店情報提供サーバ１００（ＣＰＵ１１）は、近接が判断される時刻と少なくとも閾値Ｔ４以上の間が開くように、食事時間帯Ｔ３をシフトする（Ｓ２４）。つまり、食事時間帯Ｔ３が出発予定時刻Ｔ１と近い場合は、Ｔ３は遅い時間に再設定される。他方、食事時間帯Ｔ３が到着予定時刻Ｔ２と近い場合は早い時間に再設定される。
【００８４】
なお、食事時間帯Ｔ３と出発予定時刻Ｔ１又は到着予定時刻Ｔ２が近接しないと判断される場合（Ｓ２３，Ｎｏ）は、Ｓ２４のステップはスキップされる。
【００８５】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、Ｔ３における移動体３００の移動地点Ｐを推定する（Ｓ２５）。移動地点Ｐの推定の具体的方法としては、飲食店情報提供サーバ１００（ＣＰＵ１１）が食事時間帯Ｔ３をパラメータにしてルート検索サーバ１１０にクエリを発行する、あるいは、Ｓ１２でルート検索サーバ１１０からすでに取得済みのルート検索結果に基づいて計算により求めてもよい。
【００８６】
Ｓ２５による情報処理結果は、例えば、図７中の移動地点Ｐに示されている。図７に示されている移動地点Ｐは、食事時間帯Ｔ３にそれぞれ移動体３００が移動中と推定される場所であるので、ルートごとに異なる場所となる。
【００８７】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、Ｓ２５で推定した移動地点Ｐを店舗データベース３２の検索パラメータとして、店舗データベース３２に検索クエリを発行し、検索結果を受信する（Ｓ２６）。すなわち、飲食店情報提供サーバ１００（ＣＰＵ１１）は、移動地点Ｐをパラメータにして店舗データベース３２から飲食店の情報を抽出する。
【００８８】
Ｓ２６による情報処理結果は、例えば、図７中の破線で囲まれた飲食店アイコンで示される各飲食店として把握されうる。図７には、場所Ｐの最初の地点と最後の地点を焦点とする楕円の範囲内にある飲食店を検索する場合の例が示されている。図示のように、飲食店検索サーバ１００（ＣＰＵ１１）は、帯状の移動体が移動していると推定される場所Ｐから第１の距離にある飲食店を検索する。ここで「第１の距離」は、「寄り道」の範囲内で飲食店情報提供システム１側が任意に決定してよい。「第１の距離」は例えば、１時間以内にルートに帰ってくることができる距離などから逆算して定義されてもよい。
【００８９】
Ｓ２６の飲食店検索においては、出発地及び目的の少なくとも一方から第２の距離、離れた場所にあることを検索条件の一つとして検索が行われる。第２の距離はシステム側で設定してもよく、例えば、ユーザが「寄り道」体験を実感しうるほど離れた距離が設定される。第２の距離は、図８のＳ２１からＳ２４で用いた、近接を判断する閾値（Ｔ４、時間を単位とする）とは異なる。
【００９０】
続いて、飲食店情報提供サーバ１００（ＣＰＵ１１）は、Ｓ２６で得た検索結果（店舗データベース３２から飲食店の情報を抽出した結果）を調整する処理を行い（Ｓ２７）、飲食店検索処理を終え、図８のフローに戻る。検索結果の調整処理の詳細については、図１０を参照しながら説明する。
【００９１】
図１０を参照すると、飲食店検索処理の検索結果（飲食店情報の抽出結果）の調整処理の手順が示されている。
【００９２】
まず、飲食店検索サーバ１００（ＣＰＵ１１）は、飲食店検索処理の検索結果に係る抽出された飲食店の個数が所定の最少店舗数より少ないか否かを判断する（Ｓ３１）。飲食店検索処理の検索結果に係る抽出された飲食店の個数が所定の最少店舗数より少ないと判断される場合（Ｓ３１，Ｙｅｓ）、飲食店検索サーバ１００（ＣＰＵ１１）は、食事時間帯Ｔ３をより遅い時間にシフトする（Ｓ３２）。つまり、食事時間帯Ｔ３が遅い時間に移動する。
【００９３】
なお、この所定の最少店舗数は、飲食店情報提供システム１により、所定の値に決定されてもよい。また、飲食店情報提供システム１は所定の最少店舗数をユーザが変更することのできるユーザインタフェースを備えてもよい。また、Ｓ３２におけるＴ３のシフト幅についても、飲食店情報提供システム１により、所定の値に決定されてよく、変更も可能としてよい。
【００９４】
飲食店検索サーバ１００（ＣＰＵ１１）は、飲食店検索処理の検索結果に係る抽出された飲食店の個数が、所定の最少店舗数より少ないか否かを判断する（Ｓ３１）。所定の最少店舗数は例えば、１に設定された場合、飲食店がまったくない場合にＹｅｓとなる。この判断で抽出された飲食店舗数が所定の最少店舗数より少ない場合（Ｓ３１，Ｙｅｓ）、飲食店検索サーバ１００（ＣＰＵ１１）は、食事時間帯Ｔ３のシフト（Ｓ３２）に続いて、シフト後の食事時間帯Ｔ３における移動体３００の移動地点Ｐを推定ないし特定する（Ｓ３３）。次に、飲食店検索サーバ１００（ＣＰＵ１１）は、移動地点Ｐをパラメータにして店舗データベース３２に検索クエリを発行、飲食店の情報を抽出する（Ｓ３４）。このＳ３３の処理はＳ２５の処理と同等のものである。また、Ｓ３４はＳ２６の処理と同等のものである。
【００９５】
なお、飲食店検索処理の検索結果に係る抽出された飲食店の個数が所定の最少店舗数より少ないと判断されない場合（Ｓ３１，Ｎｏ）、飲食店検索サーバ１００（ＣＰＵ１１）は、Ｓ３２からＳ３４までの処理をスキップする。
【００９６】
図１０に示した情報処理手順例では、Ｓ３１〜Ｓ３４の処理を１回だけ行う例が示されているが、Ｓ３４の店舗検索によってもなお検索結果の個数が所定の最少店舗数より少ない場合は、Ｓ３１〜Ｓ３４の処理がさらに複数回繰り返されるよう構成してもよい。
【００９７】
飲食店検索サーバ１００（ＣＰＵ１１）は、図１０に示す検索結果の調整処理を終えると、図８のルート検索結果と飲食店検索結果の出力（Ｓ１４）に遷移する。
【００９８】
以下では、Ｓ１２で得られたルート検索サーバ１１０から受信した１以上複数のルート検索結果と、Ｓ１３で得られた飲食店検索処理の検索結果に基づいて、飲食店情報提供サーバ１００（ＣＰＵ１１）により構成される、表示出力画面について説明する。この表示出力画面は、ユーザ端末２００に対して出力される（Ｓ１４）。なお、この表示出力画面は、飲食店情報提供サーバ１００（ＣＰＵ１１）による出力の一態様である。
【００９９】
＜表示出力＞
図１１を参照すると、飲食店情報提供サーバ１００（ＣＰＵ１１）により構成される、表示出力画面の一例が示されている。図１１の表示画面２１０は、図６と同様に、ユーザ端末２００がルート検索アプリケーション２０２の表示画面として出力する。表示画面２１０は、図示のように出発地に対応する表示エレメント２１６と、目的地に対応する表示エレメント２１７を有する。また、出発地に対応する表示エレメント２１６と、目的地に対応する表示エレメント２１７をつなぐ、移動体３００の移動を表す表示エレメント２１８を有していてもよい。図１１において表示エレメント２１８は矢印で示されている。
【０１００】
本実施形態においては、出発地に対応する表示エレメント２１６と、目的地に対応する表示エレメント２１７が出力されると共に、図９と図１０を参照しながら説明した飲食店情報検索の検索結果の表示出力へのリンクを提供する表示エレメント２２０が出力される。表示エレメント２２０は食事時間帯Ｔ３を、移動体３００の移動を表す表示エレメント２１８に重畳させて視覚化させた表示エレメント２１９を伴ってもよい。
【０１０１】
図１１には、目的地の地理情報をパラメータに飲食店情報検索を行う（又は飲食店情報検索の結果を表示する）ための表示エレメント２２１も記載されている。「寄り道検索」の検索結果へのリンクを提供する表示エレメント２２０は、このような目的地における飲食店情報検索へのリンクを提供する表示エレメント２２１とはまったく異なり、ユーザが通常食事する時間帯（食事時間帯Ｔ３）に食事することの可能な飲食店を探すユーザインタフェースを提供する。目的地における飲食店情報は時間的に適切でないタイミングで示される情報となる可能性があるところ、本実施形態による「寄り道検索」は、食事に適した時間帯に利用可能な飲食店の提案が可能である。
【０１０２】
図１２を参照すると、飲食店情報検索の検索結果の表示出力の一例が示されている。飲食店情報提供システム１は、図１１の飲食店情報検索の検索結果の表示出力へのリンクを提供する表示エレメント２２０をユーザが選択するなどした場合に、図１２に示すような画面へ遷移するよう構成される。
【０１０３】
＜予約処理＞
図１２に例示したような表示出力画面には、図５のユースケースを参照しながら説明したような「店舗予約をする」機能への呼び出しを割り当ててもよい。この場合、図１２では、飲食店を示すアイコンがクリッカブルに構成される。ユーザにより図１２中の飲食店が選択されると、飲食店情報提供サーバ１００（ＣＰＵ１１）は、選択された飲食店に予約要求を送信する。当該予約要求は、食事時間帯Ｔ３を含んでもよく、食事時間帯Ｔ３にユーザが飲食の提供サービスを受けることの申し込みとして構成されてもよい。
【０１０４】
さらに当該予約要求には、人数情報も含んでもよい。人数情報はユーザがその店舗を訪れる人数、予約人数である。人数情報は、例えば、ユーザ端末２００が移動体３００から自動的に取得してもよい。移動体３００が人感センサなどにより人数が把握可能な乗用車であり、ユーザ端末２００が移動体３００に設置されるカー・ナビゲーション端末であるような場合、ユーザ端末２００は、移動体３００から人数情報を取得する。
【０１０５】
＜変形例＞
上記実施形態は、例えば、次のように実施することもできる。
【０１０６】
＜第２の実施形態＞
【０１０７】
上述の実施形態においては、ユーザが移動体３００を乗り続けることを想定しているが、ユーザが出発地から目的地まで、複数の移動体３００を乗り継いで移動してもよい。また、このように乗り継ぎが考慮された場合であっても第１の実施形態はその効果を発揮する。
【０１０８】
本実施形態においては、ユーザの移動が複数の移動体３００を用いて行われる場合、第１の実施形態の構成において、飲食店情報検索処理（図９）のＳ２５（移動地点Ｐの推定）の直前に、飲食店検索サーバ１００（ＣＰＵ１１）が、乗り継ぎ予定時刻Ｔ５が食事時間帯Ｔ３に含まれるか否かを判定する。
【０１０９】
飲食店検索サーバ１００（ＣＰＵ１１）は、この判断において、含まれる場合は、第１の実施形態と同じ処理を行うが、含まれないと判断される場合はさらに、乗り継ぎ予定時刻Ｔ５が食事時間帯Ｔ３から所定の時間範囲内であるか否かを判断する。所定の時間範囲内であると判断される場合、飲食店検索サーバ１００（ＣＰＵ１１）は、食事時間帯Ｔ３を乗り継ぎ予定時刻Ｔ５を含むように変更する。これはＴ３をシフトすることにより実現してもよい。
【０１１０】
本実施形態によれば、乗り継ぎ時に食事にすることを提案することができ、合理的な提案が可能になる。
【０１１１】
＜第３の実施形態＞
上述の実施形態においては、ユーザの移動中に食事時間帯Ｔ３が一つしか含まれない場合を主に想定していたが、Ｔ３は複数であってもよい。本実施形態は、この場合、さらに、１度目の食事時間帯Ｔ３において、飲食店情報検索を行う際に設定する飲食店のジャンルなどのパラメータと、２度目の食事時間帯Ｔ３において、飲食店情報検索を行う際に設定する飲食店のジャンルなどのパラメータを異ならせる。
【０１１２】
本実施形態においては図９のＳ２６において、飲食店の種類や提供するサービスのジャンル（料理の種類や傾向など）を表すパラメータを異ならせる。なお、このパラメータは、移動地点Ｐに係るパラメータとは別のパラメータである。
【０１１３】
＜第４の実施形態＞
ユーザがキャンプ場などへ行く場合、飲食店情報検索結果が充分に得られない場合がある。本実施形態ではそのような場合に備えて、図９のＳ２６の直後において、次の処理を行う。第１に、飲食店検索サーバ１００（ＣＰＵ１１）が、Ｓ２６により抽出された飲食店の有無を判断する。第２に、抽出された飲食店がないと判断される場合に、飲食店検索サーバ１００（ＣＰＵ１１）が、移動地点Ｐから目的地までの間にある飲食店を検索する。第３に、この検索によっても、飲食店が抽出されない、つまり、移動地点Ｐから目的地までの間に飲食店がないと判断される場合、飲食店検索サーバ１００（ＣＰＵ１１）は、出発地から移動地点Ｐまでの間にある飲食店を抽出する。第４に、第３の処理の結果抽出された飲食店のうち、移動地点Ｐに最も近い飲食店を最後の飲食店として出力する。
【０１１４】
本実施形態によれば、食事時間帯にこだわらず最後の飲食店をユーザに紹介することが可能になり、ユーザの満足度が向上する。
【０１１５】
上述の実施形態に限定されず、本実施形態は種々の変形実施が可能である。例えば、上記実施形態において、飲食店情報提供サーバ１００が実行する処理のうち、飲食店検索処理（図９）を除く処理を、ユーザ端末２００が実行するように変形して実施してもよい。ユーザ端末２００は、飲食店検索処理の検索条件を生成し、検索条件を飲食店情報提供サーバ１００に送信する。飲食店情報提供サーバ１００は、その検索条件に基づいて飲食店検索処理を実行し、処理結果をユーザ端末２００に返す。ユーザ端末２００のハードウェア構成例に限定はなく、例えばカー・ナビゲーション・システムにおける車載端末として構成されてもよい。
【０１１６】
＜第５の実施形態＞
出発地や目的地から離れたところでの食事の提案を可能とするという課題を達成する、もう一つの第１の実施形態の変形例として、第５の実施形態を説明する。
【０１１７】
本実施形態においては、飲食店情報提供サーバ１００が行う情報処理において、出発予定時刻Ｔ１と到着予定時刻Ｔ２の間に食事時間帯Ｔ３が含まれるか否かを判断する（図８、Ｓ２２）ことに代えて、食事時間帯Ｔ３が出発予定時刻Ｔ１以後であるか、あるいは、食事時間帯Ｔ３が到着予定時刻Ｔ２以前であるか、いずれか一つの条件を満たすか否かを判断することとする。つまり、どちらか１つの条件を満たせば、食事時間帯Ｔ３における移動体の移動場所の推定と飲食店検索が行われる。
【０１１８】
本実施形態においては、例えば、食事時間帯Ｔ３が出発予定時刻Ｔ１以後であるような場合に、おすすめの飲食店が、目的地よりも第２の距離離れた場所に立地していれば、出発地と目的地の間になくても推薦されるようになる。目的地から第２の距離離れた場所であれば、出発地から目的地へ向かうルートに対して逆の方向へ移動した場所に立地しているような飲食店も、本実施形態によれば推薦される。
【０１１９】
本実施形態によれば、出発地と目的地を決め、出発予定時刻か到着予定時刻のいずれか一方だけを決めたような場合でも、出発地や目的地から離れたところでの食事の提案をすることができる。
【符号の説明】
【０１２０】
１…飲食店情報提供システム
１１…ＣＰＵ
１２…ＲＯＭ
１３…ＲＡＭ
１８…記憶部
１９…通信部
３１…地理情報データベース
３２…店舗データベース
１００…飲食店情報提供サーバ
２００…ユーザ端末
【図１】
2018132517.tif 000003
【図２】
2018132517.tif 000004
【図３】
2018132517.tif 000005
【図４】
2018132517.tif 000006
【図５】
2018132517.tif 000007
【図６】
2018132517.tif 000008
【図７】
2018132517.tif 000009
【図８】
2018132517.tif 000010
【図９】
2018132517.tif 000011
【図１０】
2018132517.tif 000012
【図１１】
2018132517.tif 000013
【図１２】
2018132517.tif 000014