(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、ゴルフ場等の施設を利用しようとする場合、複数人で同時に利用しようとすることがある。また、複数人での利用が前提となっている場合もある。これらの場合において、当該施設を利用するイベントを企画する企画者が他の者を誘おうとすると、例えば企画者自らが自動車を運転して、途中で他のメンバーを同乗させて当該施設に向かうことを考えれば、当該企画者の自宅や当該施設といった基点の近傍に位置する他のメンバーや、当該企画者の自宅等から当該施設までの経路の近傍に位置する他のメンバーを誘うことが、当該企画者にとっても他のメンバーにとってもメリットがある場合が多い。
しかし、そのように基点の近傍に位置する他のメンバーや、当該企画者の自宅等から当該施設までの経路の近傍に位置する他のメンバーを選定する作業は容易ではなく、かかる作業を行おうとする当該企画者等にとっては、大きな負担となっていた。
また、利用しようとする施設が決まっており、他のメンバーを後から誘う場合にも、企画者には上記と同様の大きな負担がかかるものとなっていた。
【0005】
そこで本発明は、この点に鑑みてなされたものであり、利用する施設が決まっている場合に、当該施設を同時に利用するのに適したメンバーを比較的容易に特定可能とするサービスを提供することなどを解決課題とする。
【課題を解決するための手段】
【0006】
以上の課題を解決するために本発明が採用する手段を以下に説明する。なお、本発明の理解を容易にするために以下では図面の参照符号を便宜的に括弧書で付記するが、本発明を図示の形態に限定する趣旨ではない。
【0007】
上述した課題を解決するため、本発明に係る管理装置のプログラムは、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定可能な決定部(41)と、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点と前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記他の利用者のうち、前記演算部が演算した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0008】
この発明において、所定の対象に関するサービスとは、例えば、所定の対象についての情報を提供するアプリケーションサービスである。所定の対象に関する施設とは、例えば、所定の対象が「ゴルフ」である場合、ゴルフ場等が該当する。利用者の基準地点とは、当該利用者の自宅、当該利用者の自宅からの最寄駅、または、当該利用者の職場等、当該利用者の生活または行動の拠点となる場所であればどのようなものであってもよい。位置情報とは、経度及び緯度を表す情報であってもよいし、住所であってもよい。位置情報取得部は、利用者の基準地点の位置情報、及び、所定の対象の施設の位置情報が記憶されている記憶部から、位置情報を取得可能なものであればよい。この場合、記憶部は、管理装置に備えられるものであってもよいし、管理装置とは異なる装置に備えられるものであってもよい。
【0009】
上記プログラムは記録媒体に記憶させても良い。この記録媒体を用いれば、例えば上記コンピュータに上記プログラムをインストールすることができる。ここで、上記プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であっても良い。
【0010】
また、上述した管理装置のプログラムにおいて、前記コンピュータを更に、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、して機能させ、前記演算部は、前記利用者のうち前記対象利用者の基準地点と前記決定部が決定した前記経路との距離を経路外距離として演算可能である、ことを特徴とすることが好ましい。
【0011】
この態様において、関係情報取得部は、特定関係情報が記憶されている記憶部から、特定関係情報を取得可能なものであればよい。この場合、記憶部は、管理装置に備えられるものであってもよいし、管理装置とは異なる装置に備えられるものであってもよい。
【0012】
また、この態様において、対象特定部は、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者である直接関係利用者、及び、前記第1特定利用者と前記特定の関係を有する利用者である間接関係利用者、の一部若しくは全部を対象利用者として特定可能なものであってもよい。
具体的には、対象特定部は、前記特定関係情報に基づいて、所定の利用者の識別情報から、前記所定の利用者と前記特定の関係を有する利用者である直接関係利用者を特定するとともに、前記直接関係利用者の識別情報から、前記直接関係利用者と前記特定の関係を有する利用者である間接関係利用者を特定し、特定した前記直接関係利用者及び前記間接関係利用者を対象利用者として特定するものであってもよい。
また、対象特定部は、直接関係利用者及び間接関係利用者を特定したうえで、この中の一部、例えば、間接関係利用者を対象利用者として特定するものであってもよい。
【0013】
また、本発明に係る管理装置のプログラムは、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定可能な決定部(41)と、前記対象利用者の基準地点と前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記演算部が演算した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0014】
また、上述した管理装置のプログラムにおいて、前記決定部は、予め設けられた複数の中継候補地点のうち、前記所定の利用者の基準地点から前記所定の施設まで移動するために経由すべき中継候補地点である中継地点を、当該移動に係る負荷の大きさの程度を表す指標値が最小となるように決定することで、前記経路を決定可能である、ことを特徴とすることが好ましい。
【0015】
この態様において、移動とは、自動車による移動であってもよいし、鉄道、航空機等の公共交通機関による移動であってもよい。中継候補地点とは、ある2つの地点間を移動する場合に、経由する可能性のある地点である。例えば、所定の利用者が自動車による移動をする場合、交差点、インターチェンジ等、自動車による移動において経由する可能性がある地点である。また、鉄道による移動をする場合には、駅が該当し、航空機で移動する場合には、空港が該当する。移動に係る負荷の大きさの程度を表す指標値とは、例えば、移動に係る所要時間の長さの程度を示す値であってもよいし、移動に係る交通費の高さの程度を示す値であってもよい。
【0016】
また、この態様において、前記位置情報取得部は、前記中継地点の位置情報を取得可能であり、前記演算部は、前記所定の利用者の基準地点と前記対象利用者の基準地点との距離である第1距離、前記所定の施設と前記対象利用者の基準地点との距離である第2距離、及び、前記中継地点と前記対象利用者の基準地点との距離である第3距離のうち、最小の距離を、前記経路外距離として演算可能である、ことを特徴としてもよい。
【0017】
また、この態様において、前記複数の中継候補地点は、特定の属性を有する特定中継候補地点を含み、前記位置情報取得部は、前記中継地点の位置情報を取得可能であり、前記演算部は、前記所定の利用者の基準地点と前記対象利用者の基準地点との距離である第1距離、前記所定の施設と前記対象利用者の基準地点との距離である第2距離、及び、前記中継地点から前記特定中継候補地点を除外した対象中継地点と前記対象利用者の基準地点との距離である第3距離のうち、最小の距離を、前記経路外距離として演算可能である、ことを特徴としてもよい。ここで、中継候補地点の有する属性とは、交差点、インターチェンジ、駅、空港等、2つの地点間を移動する場合に経由する可能性のある地点の種類である。
【0018】
また、この態様において、前記演算部は、前記所定の利用者の基準地点と前記対象利用者の基準地点との距離である第1距離、及び、前記所定の施設と前記対象利用者の基準地点との距離である第2距離のうち、最小の距離を、前記経路外距離として演算可能である、ことを特徴としてもよい。
【0019】
また、本発明に係る管理装置のプログラムは、2つの地点の間を移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信する通信部可能であるとともに、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記他の利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記他の利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0020】
この発明において、所定の対象に関するサービスとは、例えば、所定の対象についての情報を提供するアプリケーションサービスである。所定の対象に関する施設とは、例えば、所定の対象が「ゴルフ」である場合、ゴルフ場等が該当する。利用者の基準地点とは、当該利用者の行動の拠点となる場所であればどのようなものであってもよい。位置情報とは、経度及び緯度を表す情報であってもよいし、住所であってもよい。位置情報取得部は、利用者の基準地点の位置情報、及び、所定の対象の施設の位置情報が記憶されている記憶部から、位置情報を取得可能なものであればよい。この場合、記憶部は、管理装置に備えられるものであってもよいし、管理装置とは異なる装置、例えば、第1外部装置に備えられるものであってもよい。
【0021】
また、上述した管理装置のプログラムにおいて、前記コンピュータを更に、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、して機能させ、前記距離情報取得部は、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信可能であり、前記経路外距離は、前記距離情報取得部が送信した位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記対象利用者の基準地点との間の距離であり、前記候補特定部は、前記対象利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能である、ことを特徴とすることが好ましい。
【0022】
関係情報取得部は、特定関係情報が記憶されている記憶部から、特定関係情報を取得可能なものであればよい。この場合、記憶部は、管理装置に備えられるものであってもよいし、管理装置とは異なる装置、例えば、第1外部装置に備えられるものであってもよい。
なお、対象特定部は、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者である直接関係利用者、及び、前記直接関係利用者と前記特定の関係を有する利用者である間接関係利用者、の一部若しくは全部を対象利用者として特定可能なものであってもよい。
【0023】
また、本発明に係る管理装置のプログラムは、2つの地点の間を移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記対象利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記距離情報取得部が取得した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0024】
また、本発明に係る管理装置のプログラムは、2つの地点の間を移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点から特定の属性を有する中継地点を除外した対象中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記対象中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記他の利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記他の利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0025】
経路情報取得部が取得した1若しくは複数の中継地点に特定の属性を有する中継地点が存在しない場合、1若しくは複数の中継地点の全てが対象中継地点となる。また、1若しくは複数の中継地点の全てが特定の属性を有する中継地点に該当する場合、1若しくは複数の中継地点の中に対象中継地点が含まれない。
【0026】
また、上述した管理装置のプログラムにおいて、前記コンピュータを更に、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、して機能させ、前記距離情報取得部は、前記対象中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信可能であり、前記経路外距離は、前記距離情報取得部が送信した位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記対象中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記対象利用者の基準地点との間の距離であり、前記候補特定部は、前記対象利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能である、ことを特徴とすることが好ましい。
【0027】
また、本発明に係る管理装置のプログラムは、2つの地点の間を移動するための経路を決定可能であり、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点から特定の属性を有する中継地点を除外した対象中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記対象中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記対象利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記距離情報取得部が取得した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0028】
また、本発明に係る管理装置のプログラムは、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の基準地点の位置情報、所定の施設の位置情報、及び、前記利用者のうち同伴利用者の基準地点の位置情報に基づいて、前記所定の利用者の前記基準地点から前記所定の施設まで前記同伴利用者の前記基準地点を経由して移動するための経路を決定可能な決定部(41)と、前記利用者のうち前記所定の利用者と前記同伴利用者とを除く他の利用者の基準地点と、前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記他の利用者のうち、前記演算部が演算した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0029】
また、上述した管理装置のプログラムにおいて、前記コンピュータを更に、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、して機能させ、前記演算部は、前記同伴利用者が前記対象利用者に含まれる場合、前記同伴利用者を除いた前記対象利用者の基準地点と前記決定部が決定した前記経路との距離を経路外距離として演算可能であり、前記同伴利用者が前記対象利用者に含まれない場合、前記対象利用者の基準地点と前記決定部が決定した前記経路との距離を経路外距離として演算可能である、
ことを特徴とすることが好ましい。
【0030】
また、上述した管理装置のプログラムにおいて、前記決定部は、予め設けられた複数の中継候補地点のうち、前記所定の利用者の基準地点から前記所定の施設まで、前記同伴利用者の基準地点を経由して移動するために経由すべき中継候補地点である中継地点を、当該移動に係る負荷の大きさの程度を表す指標値が最小となるように決定することで、前記経路を決定可能である、ことを特徴とすることが好ましい。
【0031】
また、本発明に係る管理装置のプログラムは、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報、所定の施設の位置情報、及び、前記対象利用者のうち所定の対象利用者の基準地点の位置情報に基づいて、前記所定の利用者の基準地点から前記所定の施設まで前記所定の対象利用者の基準地点を経由して移動するための経路を決定可能な決定部(41)と、前記対象利用者から前記所定の対象利用者を除いた利用者の基準地点と、前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記演算部が演算した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0032】
また、上述した管理装置のプログラムにおいて、前記決定部は、予め設けられた複数の中継候補地点のうち、前記所定の利用者の基準地点から前記所定の施設まで、前記所定の対象利用者の基準地点を経由して移動するために経由すべき中継候補地点である中継地点を、当該移動に係る負荷の大きさの程度を表す指標値が最小となるように決定することで、前記経路を決定可能である、ことを特徴とすることが好ましい。
【0033】
また、本発明に係る管理装置のプログラムは、2つの地点の間を経由地点を経由して移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者が、前記所定の利用者の基準地点から所定の施設まで移動する途中で、前記利用者のうち同伴利用者の基準地点を経由する場合において、前記所定の利用者の基準地点の位置情報と前記所定の施設の位置情報とを前記第1外部装置に送信し、前記同伴利用者の基準地点の位置情報を前記経由地点の位置情報として前記第1外部装置に送信するとともに、送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、前記同伴利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記利用者のうち前記所定の利用者と前記同伴利用者とを除く他の利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、前記同伴利用者の基準地点、または、前記所定の施設と、前記他の利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記他の利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0034】
また、上述した管理装置のプログラムにおいて、前記コンピュータを更に、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、して機能させ、前記距離情報取得部は、前記同伴利用者が前記対象利用者に含まれる場合、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、前記同伴利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記経由地点の位置情報として、前記同伴利用者を除く前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信可能であり、前記同伴利用者が前記対象利用者に含まれない場合、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、前記同伴利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記経由地点の位置情報として、前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信可能であり、前記経路外距離は、前記同伴利用者が前記対象利用者に含まれる場合、前記経路情報取得部が送信した位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、前記同伴利用者の基準地点、または、前記所定の施設と、前記対象利用者のうち前記同伴利用者を除く利用者の基準地点との間の距離であり、前記同伴利用者が前記対象利用者に含まれない場合、前記経路情報取得部が送信した位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、前記同伴利用者の基準地点、または、前記所定の施設と、前記対象利用者の基準地点との間の距離であり、前記候補特定部は、前記同伴利用者が前記対象利用者に含まれる場合、前記同伴利用者を除く前記対象利用者の中から、前記距離情報取得部が取得した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能であり、前記同伴利用者が前記対象利用者に含まれない場合、前記対象利用者の中から、前記距離情報取得部が取得した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能である、ことを特徴とすることが好ましい。
【0035】
また、本発明に係る管理装置のプログラムは、2つの地点の間を経由地点を経由して移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供し、コンピュータを具備する管理装置(1)のプログラムであって、前記コンピュータを、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者が、前記所定の利用者の基準地点から所定の施設まで移動する途中で、前記対象利用者のうち所定の対象利用者の基準地点を経由する場合において、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信し、前記所定の対象利用者の基準地点の位置情報を前記経由地点の位置情報として前記第1外部装置に送信するとともに、送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、前記所定の対象利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者から前記所定の対象利用者を除いた特定対象利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、前記所定の対象利用者の基準地点、または、前記所定の施設と、前記特定対象利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記距離情報取得部が取得した前記経路外距離が所定値以下となる特定対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、して機能させる、ことを特徴とする。
【0036】
また、上述した管理装置のプログラムにおいて、前記管理装置は、前記利用者を含む外部利用者を一意に識別する識別情報と、前記外部利用者同士の特定の関係を表す特定関係情報とを管理する第2外部装置(3)と通信可能であり、前記関係情報取得部は、前記識別情報取得部が取得した前記利用者の識別情報に基づいて、前記第2外部装置から前記特定関係情報を取得可能である、ことを特徴とすることが好ましい。
【0037】
また、本発明に係る管理装置の制御方法は、所定の表示情報に基づく画面を表示可能な表示部を備える利用者の端末装置(2)と通信可能であり、利用者に所定の対象に関するサービスを提供する管理装置(1)の制御方法であって、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得し、所定の利用者の端末装置からの要求に応じて、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定し、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点と前記経路との距離である経路外距離を演算し、前記他の利用者のうち、前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定し、前記選択候補利用者を表す情報を含む表示情報を生成し、当該表示情報を前記所定の利用者の端末装置に送信する制御を行う、ことを特徴とする。
【0038】
この発明において、端末装置とは、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末などが該当する。所定の対象に関するサービスとは、例えば、所定の対象についての情報を提供するアプリケーションサービスであってもよい。
【0039】
また、本発明に係る管理装置の制御方法は、所定の表示情報に基づく画面を表示可能な表示部を備える利用者の端末装置(2)と通信可能であり、利用者に所定の対象に関するサービスを提供する管理装置(1)の制御方法であって、前記利用者を一意に識別する識別情報を取得し、前記利用者同士の特定の関係を表す特定関係情報を取得し、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得し、所定の利用者の端末装置からの要求に応じて、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定し、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定し、前記対象利用者の基準地点と前記経路との距離を経路外距離として演算し、前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定し、前記選択候補利用者を表す情報を含む表示情報を生成し、当該表示情報を前記所定の利用者の端末装置に送信する制御を行う、ことを特徴とする。
【0040】
また、本発明に係る管理装置は、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定可能な決定部(41)と、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点と前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記他の利用者のうち、前記演算部が演算した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(42)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0041】
また、本発明に係る管理装置は、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者を一意に識別する識別情報を取得可能な識別情報取得(11)部と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定可能な決定部(41)と、前記対象利用者の基準地点と前記決定部が決定した前記経路との距離である経路外距離をして演算可能な演算部(42)と、前記演算部が演算した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0042】
また、本発明に係る管理装置は、2つの地点の間を移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置と通信可能であるとともに、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記他の利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記他の利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0043】
また、本発明に係る管理装置は、2つの地点の間を移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、または、前記所定の施設と、前記対象利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記距離情報取得部が取得した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0044】
また、本発明に係る管理装置は、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、前記所定の利用者の基準地点の位置情報、所定の施設の位置情報、及び、前記利用者のうち同伴利用者の基準地点の位置情報に基づいて、前記所定の利用者の前記基準地点から前記所定の施設まで前記同伴利用者の前記基準地点を経由して移動するための経路を決定可能な決定部(41)と、前記利用者のうち前記所定の利用者と前記同伴利用者とを除く他の利用者の基準地点と、前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記他の利用者のうち、前記演算部が演算した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0045】
また、本発明に係る管理装置は、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者の基準地点の位置情報、所定の施設の位置情報、及び、前記対象利用者のうち所定の対象利用者の基準地点の位置情報に基づいて、前記所定の利用者の基準地点から前記所定の施設まで前記所定の対象利用者の基準地点を経由して移動するための経路を決定可能な決定部(41)と、前記対象利用者から前記所定の対象利用者を除いた利用者の基準地点と、前記決定部が決定した前記経路との距離である経路外距離を演算可能な演算部(42)と、前記演算部が演算した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0046】
また、本発明に係る管理装置は、2つの地点の間を経由地点を経由して移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、
前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者が、前記所定の利用者の基準地点から所定の施設まで移動する途中で、前記利用者のうち同伴利用者の基準地点を経由する場合において、前記所定の利用者の基準地点の位置情報と前記所定の施設の位置情報とを前記第1外部装置に送信し、前記同伴利用者の基準地点の位置情報を前記経由地点の位置情報として前記第1外部装置に送信するとともに、送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、前記同伴利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記利用者のうち前記所定の利用者と前記同伴利用者とを除く他の利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離のうち最短の距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、前記同伴利用者の基準地点、または、前記所定の施設と、前記他の利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記他の利用者のうち、前記距離情報取得部が取得した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0047】
また、本発明に係る管理装置は、2つの地点の間を経由地点を経由して移動するための経路を決定可能で、且つ、2つの地点間の距離を演算可能な第1外部装置(4)と通信可能であるとともに、利用者に所定の対象に関するサービスを提供する管理装置(1)であって、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、少なくとも、所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定可能な対象特定部(16)と、前記所定の利用者が、前記所定の利用者の基準地点から所定の施設まで移動する途中で、前記対象利用者のうち所定の対象利用者の基準地点を経由する場合において、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とを前記第1外部装置に送信し、前記所定の対象利用者の基準地点の位置情報を前記経由地点の位置情報として前記第1外部装置に送信するとともに、送信された位置情報に基づいて前記第1外部装置が決定した経路上の1または複数の中継地点の位置情報を、前記第1外部装置から取得可能な経路情報取得部(14)と、前記経路情報取得部が取得した1若しくは複数の中継地点の位置情報、前記所定の利用者の基準地点の位置情報、前記所定の対象利用者の基準地点の位置情報、及び、前記所定の施設の位置情報、のうち少なくとも1つと、前記対象利用者から前記所定の対象利用者を除いた特定対象利用者の基準地点の位置情報とを、前記第1外部装置に送信するとともに、当該送信された位置情報に基づいて前記第1外部装置が演算した距離であって、前記1若しくは複数の中継地点、前記所定の利用者の基準地点、前記所定の対象利用者の基準地点、または、前記所定の施設と、前記特定対象利用者の基準地点との間の距離である経路外距離を示す情報を取得可能な距離情報取得部(15)と、前記距離情報取得部が取得した前記経路外距離が所定値以下となる特定対象利用者を、選択候補利用者として特定可能な候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成可能な表示情報生成部(18)と、を備えることを特徴とする。
【0048】
また、本発明に係るサービス提供システムは、利用者に所定の対象に関するサービスを提供する管理装置(1)と、前記利用者の端末装置(2)と、を備えるサービス提供システム(100A)であって、前記端末装置は、所定の表示情報に基づく画面を表示可能な表示部を備え、前記管理装置と通信可能であり、前記管理装置は、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の端末装置からの要求に応じて、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定する決定部(41)と、前記利用者のうち前記所定の利用者を除く他の利用者の基準地点と前記決定部が決定した前記経路との距離である経路外距離を演算する演算部(42)と、前記他の利用者のうち、前記演算部が演算した前記経路外距離が所定値以下となる利用者を、選択候補利用者として特定する候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成する表示情報生成部(18)と、前記表示情報を前記所定の利用者の端末装置に送信する制御を行う送信制御部(181)と、を備えることを特徴とする。
【0049】
また、本発明に係るサービス提供システムは、利用者に所定の対象に関するサービスを提供する管理装置(1)と、前記利用者の端末装置(2)と、を備えるサービス提供システム(100A)であって、前記端末装置は、所定の表示情報に基づく画面を表示可能な表示部を備え、前記管理装置と通信可能であり、前記管理装置は、前記利用者を一意に識別する識別情報を取得可能な識別情報取得部(11)と、前記利用者同士の特定の関係を表す特定関係情報を取得可能な関係情報取得部(12)と、前記利用者の基準地点の位置情報、及び、前記所定の対象に関する施設の位置情報を取得可能な位置情報取得部(13)と、所定の利用者の端末装置からの要求に応じて、少なくとも、前記所定の利用者の識別情報と前記特定関係情報とに基づいて、前記所定の利用者と前記特定の関係を有する利用者の一部若しくは全部を対象利用者として特定する対象特定部(16)と、前記所定の利用者の基準地点の位置情報と所定の施設の位置情報とに基づいて、前記所定の利用者の基準地点から前記所定の施設まで移動するための経路を決定する決定部(41)と、前記対象利用者の基準地点と前記決定部が決定した前記経路との距離である経路外距離を演算する演算部(42)と、前記演算部が演算した前記経路外距離が所定値以下となる対象利用者を、選択候補利用者として特定する候補特定部(17)と、前記候補特定部が特定した前記選択候補利用者を表す情報を含む表示情報を生成する表示情報生成部(18)と、前記表示情報を前記所定の利用者の端末装置に送信する制御を行う送信制御部(181)と、を備えることを特徴とする。
【発明を実施するための形態】
【0051】
以下、実施形態として、本発明に係る管理サーバを用いたサービス提供システムについて、図面を参照しつつ説明する。
<実施形態>
<1.サービス提供システムの概要>
図1は、本発明の実施形態に係るサービス提供システム100のブロック図である。
【0052】
サービス提供システム100は、インターネット等の通信網NET、管理サーバ1(「管理装置」の一例)、利用者の端末装置2、地図情報サーバ4(「第1外部装置」の一例)、及び、SNSサイトを提供する外部管理サーバ3(「第2外部装置」の一例)を備える。
管理サーバ1は、ゴルフ(「所定の対象」の一例)に関する情報サービスやコミュニティサービス等のゴルフ情報アプリケーションサービス(「所定の対象に関するサービス」の一例)を、ゴルフ利用者U1(「利用者」の一例)に対して提供する。
なお、本実施形態は、管理サーバ1が提供するサービスとして、ゴルフ情報アプリケーションサービスを例示して説明するが、管理サーバ1は、ゴルフ情報アプリケーションサービス以外のアプリケーションサービスの提供、例えば、ホテルの予約等を含む旅行情報の提供、スポーツ施設等の情報の提供、コンサート情報の提供等に係るアプリケーションサービスを提供するものであってもよい。
【0053】
外部管理サーバ3は、SNSを、SNS利用者U2(「外部利用者」の一例)に対して提供する。SNSのウェブサイトでは、SNS利用者U2に対して、SNS利用者U2同士がコミュニケーションを行うためのツール(例えば、掲示板、メール、チャット等)が提供される。また、SNSのウェブサイトにおいて、アクション元のSNS利用者U2が友達申請を行い、これをアクション先のSNS利用者U2が承認することによって、SNS利用者U2同士の特定の関係であるSNS友達関係が構築される。外部管理サーバ3は、SNS利用者U2同士の特定の関係であるSNS友達関係を示す友達情報(「特定関係情報」の一例)を管理する。
【0054】
外部管理サーバ3が提供するSNSにおいては、掲示板、メール、チャット等を利用することができるだけでなく、ゲームや実用的なツール等のソーシャルアプリケーションを利用することができる。このソーシャルアプリケーションは、前記SNSの提供者以外の提供者によっても提供されることがあり、ソーシャルアプリケーションを利用するか否か、あるいは、どのソーシャルアプリケーションを利用するかは、SNS利用者U2が任意に決定できるようになっている。SNS利用者U2がソーシャルアプリケーションの利用を希望する場合には、当該ソーシャルアプリケーションが当該SNS利用者U2の個人情報やSNS上の友達情報にアクセスする機能や、当該ソーシャルアプリケーションが当該SNS利用者U2の代わりに掲示板等に投稿する機能等についての許可を求める場合がある。ソーシャルアプリケーションによっては、SNS利用者U2がこれらの機能について許可したことを以って、当該ソーシャルアプリケーションの利用者になる場合がある。このようなソーシャルアプリケーションは、一般に、SNSサイト内に当該ソーシャルアプリケーションの画面が表示されるため、SNS利用者U2にとっては、あたかもSNSが提供するサービスの一つを利用しているような感覚で、ソーシャルアプリケーションを利用することになる。
本実施形態の管理サーバ1によって提供されるゴルフ情報アプリケーションサービスは、一例として、上述のようなソーシャルアプリケーションにより提供されるサービスである。本実施形態においては、SNS利用者U2がゴルフ情報アプリケーションの利用者であるゴルフ利用者U1になるためには、ゴルフ情報アプリケーションが当該SNS利用者U2の個人情報やSNS上の友達情報にアクセスする機能や、ゴルフ情報サービスが当該SNS利用者U2の代わりに掲示板等に投稿する機能等についての承認を行うようになっている。SNS利用者U2がこの承認を行うことにより、当該SNS利用者U2はゴルフ利用者U1となる。
【0055】
外部管理サーバ3が提供するSNSの利用者であるSNS利用者U2に限って、管理サーバ1からゴルフ情報アプリケーションサービスの提供を受けることができる。すなわち、SNS利用者U2に限って、管理サーバ1にゴルフ利用者U1として登録することが可能である。つまり、ゴルフ利用者U1は常にSNS利用者U2であるが、SNS利用者U2の中にはゴルフ利用者U1でない者も存在する。換言すれば、ゴルフ利用者U1の集合は、
図2に示すように、SNS利用者U2の集合に含まれる。このため、実施形態の管理サーバ1は、ゴルフ利用者U1同士の特定の関係であるゴルフ友達関係を、SNS友達関係を示す友達情報を用いて管理する。
ここで、
図2に示すように、所定のゴルフ利用者U1aとSNS友達関係を有するSNS利用者U2を、所定のゴルフ利用者U1aの直接SNS友達Ufと称する。また、所定のゴルフ利用者U1aの直接SNS友達UfとSNS友達関係を有するSNS利用者U2を、所定のゴルフ利用者U1aの間接SNS友達Uffと称する。但し、所定のゴルフ利用者U1aの間接SNS友達Uffには、所定のゴルフ利用者U1aと、所定のゴルフ利用者U1aの直接SNS友達Ufとは含まれないものとする。
所定のゴルフ利用者U1aの直接SNS友達Ufであってゴルフ利用者U1である者を、所定のゴルフ利用者U1aの直接ゴルフ友達Ug(「直接関係利用者」の一例)と称する。また、ゴルフ利用者U1の間接SNS友達Uffであってゴルフ利用者U1である者を、所定のゴルフ利用者U1aの間接ゴルフ友達Ugg(「間接関係利用者」の一例)と称する。
すなわち、管理サーバ1は、ゴルフ利用者U1のうち所定のゴルフ利用者U1a(「所定の利用者」の一例)の直接SNS友達Ufであり、且つ、ゴルフ利用者U1に該当するものを、所定のゴルフ利用者U1aの直接ゴルフ友達Ugとして管理する。また、管理サーバ1は、所定のゴルフ利用者U1aの間接SNS友達Uffであり、且つ、ゴルフ利用者U1に該当するものを、所定のゴルフ利用者U1aの間接ゴルフ友達Uggとして管理する。この場合において、「管理する」とは、SNS利用者U2に関する情報、ゴルフ利用者U1に関する情報、SNS利用者U2の友達関係を示すSNS友達情報その他のゴルフ利用者U1の友達関係を管理するために必要な情報のすべてを、自己の記憶部に保持していることを要せず、代わりに外部のサーバ装置等の装置に記憶させておき、当該装置と通信して上記情報を要求(参照)することによりゴルフ利用者U1の友達関係を把握(特定)可能であることを意味する。後に詳述するが、本実施形態では、管理サーバ1は、管理サーバ1に格納されるゴルフ利用者情報テーブルTBL11、または、外部管理サーバ3に格納されるSNS利用者情報テーブルTBL31若しくはSNS友達情報テーブルTBL32を参照することにより、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定する。なお、以下において、ゴルフ利用者U1のうちのある1人のゴルフ利用者U1を表す場合に、「U1a」のように、「U1」に「a」等の添え字を付して表現する場合がある。
【0056】
図1に示すように、外部管理サーバ3は、SNS利用者U2を一意に識別する識別情報UIDとSNS利用者U2が外部管理サーバ3に登録した個人情報とを記憶しているSNS利用者情報テーブルTBL31と、SNS利用者U2同士の特定の関係であるSNS友達関係を示す友達情報を記憶しているSNS友達情報テーブルTBL32と、を備える。また、外部管理サーバ3は、各種のAPI(Application Program Interface)を実行可能であり、管理サーバ1からのパラメータを含む要求を受信すると、SNS利用者情報テーブルTBL31又はSNS友達情報テーブルTBL32から所定の情報を抽出して管理サーバ1に返信する。
【0057】
利用者の端末装置2は、テンキーやマウス等を含む入力部24、及び、画面を表示するディスプレイ25(「表示部」の一例)を含む。端末装置2は、通信網NETを介した通信が可能であり、例えば、パーソナルコンピュータ、携帯電話機、スマートフォン、タブレット端末等が該当する。管理サーバ1が提供するゴルフ情報アプリケーションサービスは、端末装置2を介してゴルフ利用者U1に提供され、外部管理サーバ3が提供するSNSは、端末装置2を介してSNS利用者U2に提供される。
【0058】
地図情報サーバ4は、交差点情報テーブルTBL41と、道路情報テーブルTBL42と、住所情報テーブルTBL43と、を格納した地図情報記憶部43を備えている。交差点情報テーブルTBL41は、全国に存在する複数の交差点の各々(「中継候補地点」の一例)の経度及び緯度を表す経緯度情報(「位置情報」の一例)を記憶している。道路情報テーブルTBL42は、隣接関係を有する2つの交差点を結ぶ道路(正確には、道路のうちの1区間)及び当該隣接関係を有する2つの交差点の間を(すなわち、一方の交差点から他方の交差点に)、例えば自動車を用いて前記道路により移動するための所要時間(「移動に係る負荷の大きさの程度を表す指標値」の一例)を記憶している。住所情報テーブルTBL43は、住所情報と経緯度情報とを関連付けて記憶している。ここで、住所情報とは、当該住所が存在する地域、都道府県、市区町村、及び、町名番地の総称である。なお、住所情報は、郵便番号を含むものであってもよい。
【0059】
また、地図情報サーバ4は、さらに、ある2つの地点の位置をそれぞれ表す2つの経緯度情報に基づいて、当該ある2つの地点の間を自動車により移動するための経路を決定可能な経路決定部41(「決定部」の一例)を備えている。
より具体的には、経路決定部41は、交差点情報テーブルTBL41に記憶されている全国の交差点のうち、ある2つの地点の間を移動するために経由すべき複数の交差点(「中継地点」の一例)を、当該ある2つの地点の間の移動に要する所要時間が最小となるように決定することで、当該ある2つの地点を移動するための経路を決定する。
このような、ある2つの地点の間を移動するために経由すべき複数の交差点は、交差点情報テーブルTBL41に記憶されている複数の交差点についての情報、及び、道路情報テーブルTBL42に記憶されている交差点間を移動するための所要時間、に基づいて生成される有向グラフを用いて、ダイクストラ法(Dijkstra's Algorithm)またはAスター法等の公知の経路探索演算を実行することによって、決定することができる。
また、経路決定部41は、当該決定した経路(2つの地点を移動するための経路)を表す経路情報を生成する。ここで、経路情報とは、当該2つの地点を移動するために経由すべき複数の交差点のそれぞれの複数の経緯度情報である。
【0060】
また、地図情報サーバ4は、出発地点から到着地点まで移動するための一の経路上の1または複数の地点の経緯度情報である経路上位置情報(on-route position information)と、任意の一地点(前記一の経路上の地点であってもよく、前記一の経路上にはない地点でも良い)の経緯度情報とに基づいて、当該一の経路と当該一地点との間の距離を演算可能な距離演算部42(「演算部」の一例)を備える。
【0061】
管理サーバ1は、管理サーバ1を制御する制御プログラムと各種テーブルとが格納された記憶部19を備える。記憶部19が格納する各種テーブルには、ゴルフ利用者U1を一意に識別する識別情報UID及びゴルフ利用者U1の自宅等の住所情報及び経緯度情報を記憶しているゴルフ利用者情報テーブルTBL11、及び、ゴルフ場(「所定の対象に関する施設」の一例)を一意に識別するゴルフ場ID及びゴルフ場の住所情報及び経緯度情報を記憶しているゴルフ場情報テーブルTBL12が含まれる。
ここで、ゴルフ利用者U1の自宅等とは、ゴルフ利用者U1の自宅、ゴルフ利用者U1の自宅からの最寄駅、または、ゴルフ利用者U1の職場等、ゴルフ利用者U1の行動若しくは生活の起点となる場所である。以下では、ゴルフ利用者U1の自宅等をゴルフ利用者U1の「基準地点」と称することがある。なお、記憶部19は、これらテーブル以外の、各種表示情報を生成するための設定値等が記録されたテーブルを格納している。
【0062】
管理サーバ1は、ゴルフ利用者U1の識別情報UIDを取得する利用者情報取得部11(「識別情報取得部」の一例)と、ゴルフ利用者U1の識別情報UIDに基づいて外部管理サーバ3から友達情報及び個人情報を取得する友達情報取得部12(「関係情報取得部」の一例)と、ゴルフ利用者U1の基準地点の経緯度情報、及び、ゴルフ場の経緯度情報等、各種地点の経緯度情報を取得する位置情報取得部13と、を備える。
また、管理サーバ1は、利用者情報取得部11が取得した所定のゴルフ利用者U1aの識別情報UIDと、所定のゴルフ利用者U1aの識別情報UIDに基づいて友達情報取得部12が取得した友達情報と、を用いて、所定のゴルフ利用者U1aと特定の関係を有するSNS利用者U2のうちゴルフ利用者U1に該当する者、すなわち、所定のゴルフ利用者U1aの直接ゴルフ友達Ugと、所定のゴルフ利用者U1aの直接ゴルフ友達Ugと特定の関係を有するSNS利用者U2のうちゴルフ利用者U1に該当する者、すなわち、所定のゴルフ利用者U1aの間接ゴルフ友達Uggと、を所定のゴルフ利用者U1aの対象利用者Utgとして特定する対象利用者特定部16(「対象特定部」の一例)を備える。
【0063】
また、管理サーバ1は、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、1のゴルフ場の経緯度情報を、地図情報サーバ4に送信するとともに、送信された2つの経緯度情報に基づいて地図情報サーバ4の経路決定部41が決定した経路(すなわち、所定のゴルフ利用者U1aの自宅等から前記1のゴルフ場に移動するための経路)を表す経路情報を、地図情報サーバ4から取得する経路情報取得部14を備える。
【0064】
また、管理サーバ1は、経路情報取得部14が取得した経路情報に含まれる複数の交差点のそれぞれの経緯度情報と、所定のゴルフ利用者U1aの基準地点の経緯度情報と、前記1のゴルフ場の経緯度情報と、からなる複数の経緯度情報である経路上位置情報と、対象利用者Utgの基準地点の経緯度情報とを、地図情報サーバ4に送信するとともに、送信された経路上位置情報と、対象利用者Utgの基準地点の経緯度情報と、に基づいて距離演算部42が算出した距離である経路外距離(off-route distance)を示す情報を取得する経路外距離取得部15(「距離情報取得部」の一例)を備える。
【0065】
また、管理サーバ1は、経路外距離が所定の距離(所定値)以下である対象利用者Utgを、選択候補利用者Uselとして特定する選択候補利用者特定部17(「候補特定部」の一例)を備える。
また、管理サーバ1は、選択候補利用者Uselの識別情報UIDに基づいて友達情報取得部12が外部管理サーバ3から取得した個人情報を用いて、選択候補利用者Uselを表す情報を含む表示情報を生成する表示情報生成部18と、当該表示情報を所定のゴルフ利用者U1aの端末装置2に送信する制御を行う送信制御部181とを備える。
所定のゴルフ利用者U1aの端末装置2のディスプレイ25は、表示情報生成部18が生成した表示情報に基づく画面を表示することができる。
【0066】
<2.ハードウェア構成>
図3に管理サーバ1の構成を示す。この図に示すように、管理サーバ1は、装置全体を制御するCPU(Central Processing Unit)50、CPU50の作業領域として機能するRAM(Random Access Memory)51、ブートプログラム等を記憶したROM(Read Only Memory)52、各種のプログラムやデータを記憶するハードディスクドライブ53、通信網NETを介して外部の装置と通信を行う通信インターフェース(通信部)54、及び、コンパクトディスク等の情報記録媒体を読み取る読取装置55を備える。ハードディスクドライブ53は、上述した記憶部19に相当し、管理サーバ1を制御する制御プログラムと、ゴルフ利用者情報テーブルTBL11、及び、ゴルフ場情報テーブルTBL12等の各種テーブルと、を格納する。なお、管理サーバ1は、これら以外に、キーボードやマウス等を含む入力部、画像を表示するディスプレイを備えるものであってもよい。
上述した利用者情報取得部11、友達情報取得部12、位置情報取得部13、経路情報取得部14、経路外距離取得部15、対象利用者特定部16、選択候補利用者特定部17、表示情報生成部18、及び、送信制御部181は、CPU50が制御プログラムを実行し、CPU50がその制御プログラムに従って機能することにより実現される機能ブロックである。
外部管理サーバ3は、管理サーバ1と同様に構成されている。但し、ハードディスクドライブには、SNS利用者情報テーブルTBL31と、SNS友達情報テーブルTBL32とが格納される。
【0067】
図4に端末装置2の構成を示す。端末装置2は、装置全体を制御するCPU20、CPU20の作業領域として機能するRAM21、ブートプログラム等を記憶したROM22、各種のプログラムやデータを記憶する記憶装置23、マウス及びキーボード等の入力部24、画像を表示するディスプレイ25、及び通信網NETを介して外部の装置と通信を行う通信インターフェース26を備える。
【0068】
図5に地図情報サーバ4の構成を示す。地図情報サーバ4は、装置全体を制御するCPU60、CPU60の作業領域として機能するRAM61、地図情報サーバ4を制御する地図情報サーバ制御プログラム、及び、ブートプログラム等を記憶したROM62、各種のプログラムやデータを記憶する記憶装置(ハードディスクドライブ)63、マウス及びキーボード等の入力部64、画像を表示するディスプレイ65、並びに、通信網NETを介して外部の装置と通信を行う通信インターフェース66を備える。
上述した経路決定部41、及び、距離演算部42は、CPU60が地図情報サーバ制御プログラムを実行し、CPU60がその地図情報サーバ制御プログラムに従って機能することにより実現される機能ブロックである。
【0069】
<3.サービス提供システムの動作>
図6乃至
図30を参照しつつ、管理サーバ1が提供するサービス提供システム100の動作について説明する。
【0070】
管理サーバ1は、ゴルフ利用者U1の各々に対して、各種ゴルフに関する情報が集約されたマイページを提供する。
本実施形態において、マイページは、ゴルフ友達一覧画面G1(フレンドマップ)、ゴルフ友達選択画面G2、地域選択画面G3、都道府県選択画面G4、50音選択画面G5、ゴルフ場選択画面G6、経路近傍友達選択画面G7、及び、住所登録画面G8を含む。
以下、上記各画面の概要、及び、上記各画面を表示させる処理について説明する。
【0071】
<3.1.ゴルフ友達一覧画面について>
図6は、所定のゴルフ利用者U1aの端末装置2のディスプレイ25に表示されるマイページのうち、ゴルフ友達一覧画面G1(フレンドマップ)の一例である。所定のゴルフ利用者U1aがゴルフ情報アプリケーションサービスにログインすると、所定のゴルフ利用者U1aの端末装置2のディスプレイ25には、ゴルフ友達一覧画面G1が表示される。
【0072】
図6に示すように、ゴルフ友達一覧画面G1には、領域Y0に、所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]、及び、ゴルフに誘うボタンB11が表示されている。
また、ゴルフ友達一覧画面G1には、領域Y1に、所定のゴルフ利用者U1aの直接ゴルフ友達Ug(この例では、ゴルフ利用者U1b、U1c、及び、U1d)のプロフィール画像Pg(以下、「直接ゴルフ友達Ugを表す情報」と称する場合がある)が表示され、領域Y2に、所定のゴルフ利用者U1aの間接ゴルフ友達Ugg(この例では、ゴルフ利用者U1e、及び、U1f)のプロフィール画像Pg(以下、「間接ゴルフ友達Uggを表す情報」と称する場合がある)が表示されている。
このように、ゴルフ友達一覧画面G1には、所定のゴルフ利用者U1aの直接ゴルフ友達Ugのプロフィール画像Pgと、所定のゴルフ利用者U1aの間接ゴルフ友達Uggのプロフィール画像Pgとが異なる領域Y1及びY2に表示されるので、所定のゴルフ利用者U1aは、階層的な友達関係を容易に把握することが可能となる。
なお、所定のゴルフ利用者U1aは、ログアウトボタン(図示省略)をクリックする等して、ゴルフ情報アプリケーションサービスからログアウトすることができる。
【0073】
以下では、所定のゴルフ利用者U1aの端末装置2のディスプレイ25にゴルフ友達一覧画面G1を表示させる「フレンドマップ表示処理」の一例について説明する。
【0074】
<3.2.フレンドマップ表示処理について>
図7及び
図8にフレンドマップ表示処理に関するサービス提供システム100の動作シーケンスを示す。フレンドマップ表示処理は、ゴルフ利用者U1がゴルフ情報アプリケーションサービスにログインする度に実行される。
端末装置2のSNS利用者U2(ゴルフ利用者U1でもある。以下、当該ゴルフ利用者U1を、「所定のゴルフ利用者U1a」とする)が、ウェブブラウザ上で動作し、または、端末装置2にインストールされて動作するアプリケーションを起動して、SNSサイトにアクセスすると、端末装置2のディスプレイ25には、ログイン画面が表示される。このログイン画面には、識別情報UIDとパスワードとを入力する入力ボックス、及び、送信ボタンが表示される。所定のゴルフ利用者U1aが、入力ボックスに入力して送信ボタンをクリックすると、端末装置2は、入力した識別情報UID及びパスワードを含むログイン要求を外部管理サーバ3に送信する。
【0075】
ログイン要求を外部管理サーバ3が受信すると、外部管理サーバ3は認証処理を実行する(S300)。具体的には、外部管理サーバ3のCPUは、識別情報UIDとパスワードとの組が記憶されているか否かを判定し、判定条件を充足する場合にはログインを許可し、判定条件が充足されない場合にはログインを拒絶する。そして、外部管理サーバ3のCPUは判定結果を示すログイン応答を端末装置2に送信させる。なお、
図7に示す例では、ログインが許可されたものとする。一度、端末装置2で入力された識別情報UIDとパスワードとの組は、端末装置2に所定期間記憶されて、当該所定期間内であればログインを省略可能としてもよい。
【0076】
この後、所定のゴルフ利用者U1aがメニューの中からゴルフ情報アプリケーションサービスを選択すると(S200)、端末装置2は、マイページ閲覧要求を管理サーバ1に送信する。管理サーバ1はマイページ閲覧要求を受信すると、管理サーバ1のCPU50は、マイページ閲覧要求に含まれる所定のゴルフ利用者U1aの識別情報UIDを取得する(S100)。
管理サーバ1のCPU50は、ステップS100を実行することにより、利用者情報取得部11として機能する。
その後、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの識別情報UIDを外部管理サーバ3に送信する制御を行う(S101)。
【0077】
外部管理サーバ3が、所定のゴルフ利用者U1aの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスして、SNSの友達情報を取得するとともに、SNS利用者情報テーブルTBL31にアクセスして、個人情報を取得する(S301)。
【0078】
図11にSNS利用者情報テーブルTBL31のデータ構造を示す。SNS利用者情報テーブルTBL31には複数のレコードが記録されている。1つのレコードは、SNS利用者U2を一意に識別する識別情報UID(アカウントとして機能する)、及び、SNS利用者U2が外部管理サーバ3に登録した個人情報を含む。個人情報は、例えば、SNS利用者U2の氏名、性別、勤務先、メールアドレス、及び、プロフィール画像Pgのリンク先、等を含む。
【0079】
図12にSNS友達情報テーブルTBL32のデータ構造を示す。SNS友達情報テーブルTBL32には複数のレコードが記録されている。1つのレコードは、SNSの友達情報、すなわち、アクション元の識別情報UID、アクション先の識別情報UID、ステータス、及び、申請日時を含む。アクション元(友達申請送信者)は、友達申請を送信したSNS利用者U2であり、アクション先(友達申請受信者)は、友達申請を受信したSNS利用者U2である。ステータスは、友達申請の状態を示し、申請中が「0」、承諾が「1」で表される。
図12に示す例では、識別情報UIDが「z0000」のSNS利用者U2が、識別情報UIDが「z0006」のSNS利用者U2に友達申請を行い、承諾されている。
【0080】
外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスして、所定のゴルフ利用者U1aの識別情報UIDがアクション元又はアクション先として記録されているレコードを抽出することで、SNSの友達情報を抽出する。さらに、外部管理サーバ3のCPUは、これらのレコードにアクション元又はアクション先として記録されている識別情報UIDをキーとしてSNS利用者情報テーブルTBL31から個人情報を抽出する。この後、外部管理サーバ3は、抽出したSNSの友達情報及び個人情報を含む情報を管理サーバ1に送信する。
【0081】
管理サーバ1がSNSの友達情報及び個人情報を受信すると、管理サーバ1のCPU50は、受信した情報から、SNSの友達情報及び個人情報を取得する(S102)。なお、S102で取得する個人情報には、所定のゴルフ利用者U1aの個人情報と、所定のゴルフ利用者U1aの直接SNS友達Ufの個人情報とが含まれている。
次に、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDを特定する(S103)。具体的には、SNSの友達情報のレコードにおいてアクション元又はアクション先として記録されている識別情報UIDのうち、所定のゴルフ利用者U1aの識別情報UID及び重複する識別情報UIDを除いた識別情報UIDを所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDとして特定する。この結果、
図9に示すように、所定のゴルフ利用者U1aと友達関係にある直接SNS友達Ufを特定することができる。なお、所定のゴルフ利用者U1aの直接SNS友達Ufが存在しない場合には、処理をS110に進める。
この後、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDを外部管理サーバ3に送信する制御を行う(S104)。
【0082】
外部管理サーバ3が、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS友達情報テーブルTBL32にアクセスし、当該識別情報UIDがアクション元又はアクション先として記録されているレコードを抽出することで、SNSの友達情報を抽出する(S302)。この後、外部管理サーバ3は、抽出したSNSの友達情報を含む情報を管理サーバ1に送信する。
【0083】
管理サーバ1が、SNSの友達情報を含む情報を受信すると、管理サーバ1のCPU50は、受信したSNSの友達情報を取得する(S105)。
次に、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDを特定する(S106)。具体的には、友達情報のレコードにおいてアクション元又はアクション先として記録されている識別情報UIDのうち、重複する識別情報UIDを除いた識別情報UIDを、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDとして特定する。この結果、
図10に示すように所定のゴルフ利用者U1aの直接SNS友達Uf及び間接SNS友達Uffを特定することができる。
この後、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDを外部管理サーバ3に送信する制御を行う(S107)。
【0084】
外部管理サーバ3が、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDを受信すると、外部管理サーバ3のCPUは、SNS利用者情報テーブルTBL31にアクセスし、当該識別情報UIDが記録されているレコードを抽出する(S303)。この後、外部管理サーバ3は、抽出したレコードに記録されている個人情報を含む情報を管理サーバ1に送信する。
【0085】
管理サーバ1が個人情報を含む情報を受信すると、管理サーバ1のCPU50は当該個人情報を取得する(S108)。なお、S108で取得する個人情報は、所定のゴルフ利用者U1aの間接SNS友達Uffの個人情報である。
次に、管理サーバ1のCPU50は、
図8に示すように、所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDと、所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDと、ゴルフ利用者情報テーブルTBL11に記録されているゴルフ利用者U1の識別情報UIDと、に基づいて所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定し、特定した直接ゴルフ友達Ug及び間接ゴルフ友達Uggを、所定のゴルフ利用者U1aの対象利用者Utgとして特定する(S109)。
具体的には、ステップS103で特定した所定のゴルフ利用者U1aの直接SNS友達Ufの識別情報UIDのうち、ゴルフ利用者U1の識別情報UIDと一致するものを、所定のゴルフ利用者U1aの直接ゴルフ友達Ugの識別情報UIDとする。また、ステップS106で特定した所定のゴルフ利用者U1aの間接SNS友達Uffの識別情報UIDのうち、ゴルフ利用者U1の識別情報UIDと一致するものを、所定のゴルフ利用者U1aの間接ゴルフ友達Uggの識別情報UIDとする。これにより、
図2に示すように所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び間接ゴルフ友達Uggが特定される。
【0086】
このように、管理サーバ1のCPU50は、ステップS103、ステップS106、及び、ステップS109を実行することにより、対象利用者特定部16として機能する。
また、CPU50は、ステップS101、ステップS102、ステップS104、ステップS105、ステップS107、及び、ステップS108を実行することにより、友達情報取得部12として機能する。
【0087】
次に、管理サーバ1のCPU50は、ステップS102で取得した個人情報、及び、ステップS108で取得した個人情報に基づいて、表示情報を生成する(S110)。具体的には、管理サーバ1のCPU50は、まず、ステップS102及びステップS108で取得した個人情報から、対象利用者Utgのプロフィール画像Pgのデータが格納されたアドレスを示すリンク情報を抽出する。そして、管理サーバ1のCPU50は、当該抽出したリンク情報を含む表示情報を生成する。本実施形態では、送信データ量を削減するため、対象利用者Utgを表すプロフィール画像Pgは、プロフィール画像Pgのデータが格納されたアドレスを示すリンク情報として与えられるが、画像データそのものとして与えられてもよい。なお、ステップS110で生成される表示情報には、対象利用者Utgのプロフィール画像Pgの画面上の配置位置を示す情報も含まれる。
そして、管理サーバ1のCPU50は、表示情報を含むマイページ閲覧応答を、所定のゴルフ利用者U1aの端末装置2に送信する制御を行う(S111)。
【0088】
所定のゴルフ利用者U1aの端末装置2がマイページ閲覧応答を受信すると、端末装置2のCPU20はディスプレイ25に、「直接ゴルフ友達Ugのプロフィール画像Pg」及び「間接ゴルフ友達Uggのプロフィール画像Pg」を配置したゴルフ友達一覧画面G1を表示する(S201)。
【0089】
<3.3.ゴルフ場を選択する画面について>
所定のゴルフ利用者U1aは、ゴルフ友達選択画面G2(
図13)、地域選択画面G3(
図14)、都道府県選択画面G4(
図15)、50音選択画面G5(
図16)、ゴルフ場選択画面G6(
図17)、経路近傍友達(near-route friend)選択画面G7(
図27)を用いて、プレーするゴルフ場の選択、及び、当該プレーするゴルフ場に誘うゴルフ利用者U1の選択を行うことができる。
以下、これらの画面の概要、及び、これらの画面を表示させる処理について説明する。
【0090】
所定のゴルフ利用者U1aのマイページのゴルフ友達一覧画面G1(
図6)においてゴルフに誘うボタンB11がクリックされた場合、端末装置2は、管理サーバ1に対して、ゴルフ友達選択画面G2の閲覧要求を送信する。管理サーバ1がゴルフ友達選択画面G2の閲覧要求を受信すると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフ友達選択画面G2を表示させるために必要な情報(ゴルフ友達選択画面G2の表示情報)を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
【0091】
所定のゴルフ利用者U1aの端末装置2が、ゴルフ友達選択画面G2の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図13に例示するゴルフ友達選択画面G2を、例えばポップアップで表示させる。なお、本実施形態は、ゴルフ友達選択画面G2を、ポップアップで表示させるが、ゴルフ友達一覧画面G1をゴルフ友達選択画面G2に画面遷移させることで、ゴルフ友達選択画面G2を表示するものであってもよい。
図13に例示するように、ゴルフ友達選択画面G2は、ゴルフ場までのルートで絞込ボタンB21、メッセージ送信ボタンB23、前の画面であるゴルフ友達一覧画面G1に戻るための戻るボタンB22、ゴルフ友達選択画面G2を閉じるための閉じるボタンB24を含む。また、ゴルフ友達選択画面G2の表示エリアA21には、所定のゴルフ利用者U1aの対象利用者Utgを表す情報が一覧表示されるとともに、対象利用者Utgを選択するためのチェックボックスCB21が各対象利用者Utgを表す情報と1対1に対応するように設けられている。ここで、対象利用者Utgを表す情報とは、例えば、対象利用者Utgのプロフィール画像Pg及び氏名である。なお、
図13に例示するゴルフ友達選択画面G2には、所定のゴルフ利用者U1aの対象利用者Utgである5名のゴルフ利用者U1(U1b〜U1f)を表す情報(プロフィール画像Pg[U1b]〜Pg[U1f]、及び、ゴルフ利用者U1b〜U1fの各々の氏名)が表示されている。
【0092】
図13に示すゴルフ友達選択画面G2において、少なくとも1名以上の対象利用者Utgが選択された状態(つまり、チェックボックスCB21のうち少なくとも1つがチェックされた状態)で、メッセージ送信ボタンB23がクリックされると、選択された対象利用者Utgをゴルフに誘う処理が実行される。
具体的には、メッセージ送信ボタンB23がクリックされると、ゴルフに誘うメッセージを送信する旨の要求が、所定のゴルフ利用者U1aの端末装置2から管理サーバ1に送信される。ここで、ゴルフに誘うメッセージとは、所定のゴルフ利用者U1aが、ゴルフ友達選択画面G2において選択した対象利用者Utgを、ゴルフに誘っていることを表すメッセージである。また、ゴルフに誘うメッセージを送信する旨の要求とは、ゴルフ友達選択画面G2において選択した対象利用者Utgに対して、ゴルフに誘うメッセージを送信することを、管理サーバ1に依頼する旨の要求である。
管理サーバ1が当該要求を受信すると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aから発信されたゴルフに誘うメッセージを、所定のゴルフ利用者U1aがゴルフ友達選択画面G2において選択した対象利用者Utgのそれぞれの端末装置2に対して送信する。なお、管理サーバ1のCPU50は、各対象利用者Utgがゴルフ情報アプリケーションサービスにログインしたときに、当該対象利用者Utgの端末装置2に対して、ゴルフに誘うメッセージを送信すればよい。当該対象利用者Utgがゴルフ情報アプリケーションサービスにログインすると、当該対象利用者Utgのマイページ上に、ゴルフ利用者U1aから発信されたゴルフに誘うメッセージの内容(つまり、当該対象利用者Utgが、所定のゴルフ利用者U1aからゴルフに誘われている旨)が表示される。なお、ゴルフに誘うメッセージはEメールで通知されるように構成してもよい。また、ゴルフに誘うメッセージが、管理サーバ1から外部管理サーバ3に送信され、当該対象利用者UtgがSNS利用者U2としてSNSにログインすると、SNSのウェブサイト上に、所定のゴルフ利用者U1aからゴルフに誘うメッセージの内容が表示されるように構成してもよい。
【0093】
図13に示すゴルフ友達選択画面G2において、ゴルフ場までのルートで絞込ボタンB21がクリックされると、端末装置2は、管理サーバ1に対して、地域選択画面G3の閲覧要求を送信する。管理サーバ1が地域選択画面G3の閲覧要求を受信すると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25に地域選択画面G3を表示させるために必要な情報すなわち、地域選択画面G3の表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
【0094】
所定のゴルフ利用者U1aの端末装置2が、地域選択画面G3の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図14に例示する地域選択画面G3を表示させる。
図14に例示するように、地域選択画面G3は、複数の地域選択ボタンB31(B31a〜B31f)、前の画面であるゴルフ友達選択画面G2に戻るための戻るボタンB32、地域選択画面G3を閉じるための閉じるボタンB33を含む。地域選択ボタンB31a〜31fの各々には、「関東」、「関西」等の地域の名称(地方区分における各区分の名称)が表示されている。
【0095】
複数の地域選択ボタンB31のうちいずれかがクリックされると、端末装置2は、管理サーバ1に対して、都道府県選択画面G4の閲覧要求を送信する。当該要求には、クリックされた地域選択ボタンB31に対応する地域を識別するための情報(例えば、クリックされた複数の地域選択ボタンB31に表示されている地域の名称)が含まれる。
管理サーバ1が都道府県選択画面G4の閲覧要求を受信すると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25に都道府県選択画面G4を表示させるために必要な情報、すなわち、都道府県選択画面G4の表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。なお、当該表示情報には、地域選択画面G3においてクリックされた地域選択ボタンB31に表示されていた地域の名称、及び当該地域に位置する都道府県の名称が含まれている。
【0096】
所定のゴルフ利用者U1aの端末装置2が、都道府県選択画面G4の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図15に例示する都道府県選択画面G4を表示させる。
図15に例示するように、都道府県選択画面G4は、複数の都道府県選択ボタンB41、前の画面である地域選択画面G3に戻るための戻るボタンB42、都道府県選択画面G4を閉じるための閉じるボタンB43を含む。
複数の都道府県選択ボタンB41の各々には、地域選択画面G3においてクリックされた地域選択ボタンB31に表示されていた地域に位置する都道府県の名称が表示されている。例えば、地域選択画面G3において、「関東」と表示された地域選択ボタンB31bがクリックされた場合、都道府県選択画面G4には、関東地方の都道府県がそれぞれ表示された7個の都道府県選択ボタンB41a〜B41gが表示される。また、都道府県選択画面G4の表示エリアA41には、地域選択画面G3においてクリックされた地域選択ボタンB31に表示されていた地域の名称が表示される。
【0097】
複数の都道府県選択ボタンB41のうちいずれかがクリックされると、端末装置2は、管理サーバ1に対して、50音選択画面G5の閲覧要求を送信する。当該要求には、クリックされた都道府県選択ボタンB41に対応する都道府県を識別するための情報(例えば、クリックされた都道府県選択ボタンB41に表示されている都道府県の名称)が含まれる。
管理サーバ1が50音選択画面G5の閲覧要求を受信すると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25に50音選択画面G5を表示させるために必要な情報、すなわち、50音選択画面G5の表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
【0098】
所定のゴルフ利用者U1aの端末装置2が、50音選択画面G5の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図16に例示する50音選択画面G5を表示させる。
図16に例示するように、50音選択画面G5は、複数の50音選択ボタンB51(B51a〜B51j)、前の画面である都道府県選択画面G4に戻るための戻るボタンB52、50音選択画面G5を閉じるための閉じるボタンB53を含む。複数の50音選択ボタンB51の各々には、50音から成る日本語かな表(Japanese syllabary or Japanese alphabet table)の行(column)の名称(「ア行」、「カ行」、…「ワ行」)が表示されている。また、50音選択画面G5の表示エリアA51には、都道府県選択画面G4においてクリックされた都道府県選択ボタンB41に表示されていた都道府県名が表示される。
【0099】
複数の50音選択ボタンB51のうちいずれかがクリックされると、端末装置2は、管理サーバ1に対して、ゴルフ場選択画面G6の閲覧要求を送信する。当該要求には、クリックされた50音選択ボタンB51に表示されている日本語かな表の行の名称が含まれる。
管理サーバ1がゴルフ場選択画面G6の閲覧要求を受信すると、管理サーバ1のCPU50は、ゴルフ場情報テーブルTBL12にアクセスし、都道府県選択画面G4で選択された都道府県に位置し、且つ、50音選択画面G5で、日本語かな表の、選択された行の5音のいずれかから始まる名称を有するゴルフ場を特定する処理を実行する。
なお、本実施形態に係る50音選択画面G5は、日本語かな表の行の名称を選択する画面であるが、50音(「あ」、「い」、「う」…)を選択するものであってもよいし、ローマ字(「A」、「B」、「C」、…)を選択するものであってもよい。例えば、50音選択画面G5が、ローマ字を選択する画面である場合、ゴルフ場選択画面G6の閲覧要求には、選択されたローマ字を示す情報が含まれればよい。また、この場合、ゴルフ場を特定する処理は、都道府県選択画面G4で選択された都道府県に位置し、且つ、選択されたローマ字から始まる名称を有するゴルフ場を特定する処理であってもよい。
以下で、本実施形態に係るゴルフ場を特定する処理の詳細を説明する。
【0100】
図18にゴルフ場情報テーブルTBL12のデータ構造を示す。ゴルフ場情報テーブルTBL12には複数のレコードが記録されている。1つのレコードは、ゴルフ場を一意に識別するゴルフ場ID、ゴルフ場の名称を表すゴルフ場名称、各ゴルフ場の住所を表す住所情報、各ゴルフ場の経度及び緯度を表す経緯度情報、及び、日本語かな表の行名称(以下、「行名称」と称する)が記録されている。ここで、行名称とは、ゴルフ場名称を平仮名等で表記した場合の最初の一文字の子音に対応する行の名称(「あ行」、「か行」、「さ行」、…、等)である。なお、レコードは、これら以外の項目を含んでいるものであってもよい。
管理サーバ1のCPU50は、ゴルフ場情報テーブルTBL12にアクセスし、都道府県選択画面G4で選択された都道府県が記録され、且つ、50音選択画面G5で選択された50音の子音を表す行の名称が記録されているレコードを特定することで、ゴルフ場を特定する。
【0101】
次に、管理サーバ1のCPU50は、特定したレコードに記録されているゴルフ場ID、ゴルフ場名称、及び、住所情報を取得する。そして、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25にゴルフ場選択画面G6を表示させるために必要な情報、すなわち、ゴルフ場選択画面G6の表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。この表示情報には、特定したゴルフ場に係るゴルフ場名称及び住所情報が含まれている。なお、特定したゴルフ場が複数ある場合は、当該表示情報には、ゴルフ場名称及び住所情報の組合せが複数含まれることになる。
【0102】
所定のゴルフ利用者U1aの端末装置2が、ゴルフ場選択画面G6の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図17に例示するゴルフ場選択画面G6を表示させる。
図17に例示するように、ゴルフ場選択画面G6は、1または複数のゴルフ場選択ボタンB61、前の画面である50音選択画面G5に戻るための戻るボタンB62、ゴルフ場選択画面G6を閉じるための閉じるボタンB63を含む。1または複数のゴルフ場選択ボタンB61の各々には、ゴルフ場選択画面G6の表示情報に含まれている1または複数のゴルフ場名称及び住所情報がそれぞれ表示されている。例えば、50音選択画面G5において、「あ行」と表示された50音選択ボタンB51aがクリックされた場合、ゴルフ場選択画面G6には、「あ行」(「あ」、「い」、「う」、「え」、「お」)のいずれかから始まる名称を有するゴルフ場で、且つ、都道府県選択画面G4で選択された都道府県に位置する1または複数のゴルフ場の名称及び住所がそれぞれ表示されたゴルフ場選択ボタンB61a〜B61cが表示される。
【0103】
1または複数のゴルフ場選択ボタンB61のうちいずれかがクリックされると、端末装置2は、管理サーバ1に対して、経路近傍友達選択画面G7(
図27)の閲覧要求を送信する。当該要求には、クリックされたゴルフ場選択ボタンB61に表示されているゴルフ場(以下、「選択ゴルフ場」と称する場合がある。なお、当該選択ゴルフ場は、「所定の施設」の一例である。)を識別するための情報、例えば、選択ゴルフ場に対応するゴルフ場名称が含まれる。
管理サーバ1が経路近傍友達選択画面G7の閲覧要求を受信すると、管理サーバ1は、地図情報サーバ4と連携して、所定のゴルフ利用者U1aの自宅等から、選択ゴルフ場まで移動するための経路を決定する「経路決定処理」と、ゴルフ友達選択画面G2において表示されている対象利用者Utgのうち、経路決定処理において決定された経路の近傍に自宅等を有する対象利用者Utgを特定する「経路近傍利用者特定処理」と、を実行する。
以下において、まず、「経路決定処理」の一例を説明する。
【0104】
<3.4.経路決定処理について>
図19は、「経路決定処理」に関するサービス提供システム100の動作シーケンスの一例である。
経路決定処理を実行するにあたり、地図情報サーバ4は、予め、交差点情報テーブルTBL41に記録されている全国の交差点に係る情報、及び、道路情報テーブルTBL42に記録されている道路に係る情報に基づいて、複数の交差点をノードとし、互いに隣接関係を有する2つの交差点を結ぶ道路をリンクとするグラフを示す地図情報を生成する(S420)。
【0105】
図20に交差点情報テーブルTBL41のデータ構造を示す。交差点情報テーブルTBL41には複数のレコードが記録されている。1つのレコードは、日本全国に存在する複数の交差点を一意に識別する交差点識別情報NID、各交差点の名称である交差点名称、各交差点の種別を表す交差点種別、及び、各交差点の位置を表す経緯度情報を含む。
なお、本実施形態において、交差点情報テーブルTBL41に記憶されている交差点には、一般道路同士が交差する交差点の他に、一般道路と高速道路との交差点(例えば、インターチェンジ、高速道路の出入口等)、及び、高速道路同士が交差する交差点(例えば、ジャンクション(highway junction)等)を含む。
交差点名称は、交差点に名称が存在しない場合には、空欄となる。
交差点種別には、高速道路同士が交差する交差点を表す「4」、高速道路と一般道路との交差点を表す「3」、一般道路のうち大規模な一般道路(例えば、国道(national road)、都道府県道(prefectural road))同士が交差する交差点を表す「2」、及び、一般道路のうち小規模な一般道路(例えば、市町村道(municipal road))同士が交差する交差点、または、大規模な一般道路と小規模な一般道路とが交差する交差点を表す「1」のうちいずれかの値が記録されている。
なお、本実施形態において、交差点情報テーブルTBL41には、全国の交差点が記憶されているが、主要な交差点(例えば、上述した交差点種別「2」〜「4」の交差点)のみを記憶するものであってもよい。
【0106】
図21に道路情報テーブルTBL42のデータ構造を示す。道路情報テーブルTBL42には、交差点情報テーブルTBL41に記録されている複数の交差点のうち、隣接関係を有する2つの交差点の間を結ぶ道路(正確には、道路の区間)についての情報が記録されている。具体的には、以下のとおりである。
道路情報テーブルTBL42には複数のレコードが記録されている。1つのレコードは、隣接関係を有する2つの交差点の間を結ぶ道路の区間を一意に識別する道路識別情報LID、並びに、当該道路の名称である道路名称、当該道路の種別を表す道路種別、移動元NID、移動先NID、及び、所要時間を含む。
道路名称は、道路に名称が存在しない場合、空欄となる。
道路種別には、高速道路を表す値「3」、大規模な一般道路(例えば、国道、都道府県道)を表す値「2」、及び、小規模な一般道路(例えば、市町村道)を表す値「1」のうちいずれかの値が記録されている。
移動元NIDには、当該レコードが表す道路の区間の両端(すなわち、隣接関係を有する2つの交差点)の間を、当該道路を用いて移動する場合に、当該移動の起点となる交差点の交差点識別情報NIDが記録されており、移動先NIDには、当該移動の終点となる交差点の交差点識別情報NIDが記録されている。
所要時間には、移動元NIDに記録されている交差点識別情報NIDに対応する交差点から、移動先NIDに記録されている交差点識別情報NIDに対応する交差点までを、当該道路を用いて移動する場合に要する時間が記録されている。なお、この所要時間は、予め定められた固定値でも良いし、各道路の混雑状況等に応じて動的に変更されうるものでも良い。
【0107】
図19に説明を戻す。
ステップS420において、地図情報サーバ4のCPU60は、交差点情報テーブルTBL41に記録されている交差点に係る情報、及び、道路情報テーブルTBL42に記録されている道路(道路の区間)に係る情報に基づいて、
図23に示すようなグラフを示す情報を生成する。
図23に例示するグラフにおいて、符号Na1〜Na14及び符号Nb1〜Nb5は、交差点を表すノードであり、符号La1〜La21及び符号Lb1〜Lb5は、道路の各区間を表すリンクである。
この例では、1重線で示されるリンクLa1〜La21は一般道路を表し、2重線で示されるリンクLb1〜Lb5は高速道路を表す。また、この例おいて、小さな円で示されるノードNa1〜Na14は一般道路同士の交差点を表し、大きな円で示されるノードNb1〜Nb5は高速道路同士の交差点(ジャンクション)または高速道路と一般道路との交差点(インターチェンジ)を表す。また、図示は省略するが、各リンクには、道路情報テーブルTBL42に記録されている所要時間が、コストとして付与されている。
このようなグラフを用いて、公知の経路探索演算を実行することで、あるノードから他のノードに移動するための経路のうち、コスト(つまり、所要時間)が最小となる経路(すなわち、当該経路を表すノード及びリンクの組合せ)を求めることができる。
【0108】
なお、
図23に示すグラフは、理解を容易にするための説明図であり、地図情報サーバ4のCPU60は、このようなグラフを明示的に生成する必要はない。すなわち、地図情報サーバ4のCPU60は、グラフを示す情報を生成するものであればよい。
グラフを示す情報とは、公知の方法(公知のデータ構造)を用いてグラフを表現する情報である。例えば、グラフを示す情報は、グラフを構成するノードの隣接関係及びノード間を接続するリンクに付与されるコスト(所要時間)を行列により表現する隣接行列であってもよいし、各ノードから直接移動可能な隣接ノードをリストで表す隣接リストであってもよい。これらグラフを示す情報は、地図情報サーバ4の記憶装置63に記憶される。
また、例えば、地図情報サーバ4のCPU60は、グラフを示す情報を生成せずに、交差点情報テーブルTBL41及び道路情報テーブルTBL42を適宜参照しつつ、経路探索演算を実行してもよい。
【0109】
図19に示すように、所定のゴルフ利用者U1aの端末装置2に表示されたゴルフ場選択画面G6において、複数のゴルフ場選択ボタンB61のうちいずれかがクリックされると(S220)、端末装置2から管理サーバ1に対して経路近傍友達選択画面G7の閲覧要求が送信され、当該閲覧要求を管理サーバ1が受信することで、「経路決定処理」が開始される。
具体的には、管理サーバ1が経路近傍友達選択画面G7の閲覧要求を受信すると、管理サーバ1のCPU50は、当該閲覧要求に含まれる選択ゴルフ場を識別するための情報に基づいて、当該選択ゴルフ場に対応する経緯度情報をゴルフ場情報テーブルTBL12(
図18)から取得するとともに、所定のゴルフ利用者U1aの自宅等の経緯度情報をゴルフ利用者情報テーブルTBL11から取得する(S120)。
【0110】
図22にゴルフ利用者情報テーブルTBL11のデータ構造を示す。ゴルフ利用者情報テーブルTBL11には複数のレコードが記録されている。1つのレコードは、ゴルフ利用者U1を一意に識別する識別情報UID、ゴルフ利用者U1が管理サーバ1に登録された日付を表す登録日、ゴルフ利用者U1の自宅等の住所を表す住所情報、及び、ゴルフ利用者U1の自宅等の住所の経度及び緯度を表す経緯度情報を含む。ゴルフ利用者U1の住所情報及び経緯度情報は、ゴルフ利用者U1が自ら管理サーバ1に登録し、または更新することができる。なお、レコードは、これら以外の項目を含んでいるものであってもよい。
本実施形態において、ゴルフ利用者U1の識別情報UIDは、SNS利用者U2の識別情報UIDと一致する。但し、SNS利用者U2の識別情報UIDとゴルフ利用者U1の識別情報UIDとは必ずしも一致する必要はなく、相違していてもよい。この場合は、ゴルフ利用者情報テーブルTBL11のレコードにSNS利用者U2の識別情報とゴルフ利用者U1の識別情報とを対応づけて記録すればよい。
ゴルフ利用者情報テーブルTBL11は、上述した情報以外の情報を記録するものであってもよい。例えば、ゴルフ利用者U1のプロフィール画像Pgのリンク先を含んでいてもよい。また、ゴルフ利用者情報テーブルTBL11に記憶すべき情報として、ゴルフ利用者U1の識別情報UID、及び、経緯度情報は必須であるが、その他の情報は省略してもよい。さらに、ゴルフ利用者情報テーブルTBL11をキーとなる情報(例えば、識別情報UID)で紐づけた複数のテーブルで構成し、リレーショナルデータベースとしてもよい。
【0111】
管理サーバ1のCPU50は、ゴルフ利用者情報テーブルTBL11にアクセスして、所定のゴルフ利用者U1aの識別情報UIDが記録されているレコードを特定し、当該特定したレコードに記録されている経緯度情報を取得することで、所定のゴルフ利用者U1aの自宅等の経緯度情報を取得する。
また、管理サーバ1のCPU50は、ゴルフ場情報テーブルTBL12にアクセスして、選択ゴルフ場のゴルフ場IDが記録されているレコード(または、経路近傍友達選択画面G7の閲覧要求に含まれる選択ゴルフ場のゴルフ場名称が記録されているレコード)を特定し、当該特定したレコードに記録されている経緯度情報を取得することで、当該選択ゴルフ場の経緯度情報を取得する。
【0112】
次に、管理サーバ1のCPU50は、ステップS120で取得した、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報を、地図情報サーバ4に送信する制御を行う(S121)。
【0113】
地図情報サーバ4が、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報を受信すると、地図情報サーバ4のCPU60は、所定のゴルフ利用者U1aの自宅等と、選択ゴルフ場との間を移動するための経路を決定する(S421)。
具体的には、地図情報サーバ4のCPU60は、交差点情報テーブルTBL41に記録されている交差点のうち、所定のゴルフ利用者U1aの自宅等から最も近い交差点を特定するとともに、選択ゴルフ場から最も近い交差点を特定する。そして、地図情報サーバ4のCPU60は、特定した2つの交差点の間を移動するための経路のうち、所要時間が最小となる経路を決定する。
例えば、
図23に示すグラフにおいて、ノードNa1が表す交差点の近傍に所定のゴルフ利用者U1aの自宅等が位置し、ノードNa14の近傍に選択ゴルフ場が位置する場合を想定する。この場合、地図情報サーバ4のCPU60は、ステップS421の処理を実行することにより、例えば、
図24に示すように、ノードNa1、Na2、Na3、Nb1、Nb2、Nb3、Nb5、Na12、及び、Na14で表される交差点を経由する経路(つまり、リンクLa1、La2,La3、Lb1、Lb2、Lb4、La18、及び、La19で表される道路を通過する経路)を、所要時間が最小となる経路として決定する。
なお、上述した、ステップS421において地図情報サーバ4のCPU60が実行する経路を決定する処理は、一例に過ぎない。地図情報サーバ4は、公知の経路探索手法を適宜用いて、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を移動するための経路を決定することができるものであればよい。
【0114】
地図情報サーバ4のCPU60は、ステップS421の処理で決定した経路を示す経路情報を、管理サーバ1に対して送信する制御を行う(S422)。
ここで、経路情報とは、ステップS421の処理で決定した所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を移動するための経路上に位置する1または複数の交差点(
図24に示す例では、ノードNa1、Na2、Na3、Nb1、Nb2、Nb3、Nb5、Na12、及び、Na14で表される交差点)にそれぞれ対応する1または複数の経緯度情報を、当該移動において経由する順番に並べた情報である。
【0115】
管理サーバ1が、経路情報を受信すると、管理サーバ1のCPU50は、受信した経路情報を取得する(S122)。これにより、「経路決定処理」が終了する。
【0116】
<3.5.経路近傍利用者特定処理について>
次に、管理サーバ1は、地図情報サーバ4と連携して、経路決定処理において決定された経路の近傍に自宅等を有する対象利用者Utgを特定する「経路近傍利用者特定処理」を実行する。以下において、「経路近傍利用者特定処理」の一例を説明する。
【0117】
図25は、「経路近傍利用者特定処理」に関するサービス提供システム100の動作シーケンスの一例である。
まず、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの対象利用者Utgの自宅等の経緯度情報をゴルフ利用者情報テーブルTBL11(
図22)から取得する(S140)。具体的には、管理サーバ1のCPU50は、ゴルフ利用者情報テーブルTBL11にアクセスし、対象利用者Utgの識別情報UIDが記録されているレコードを特定し、当該特定したレコードに記録されている経緯度情報を取得することで、対象利用者Utgの自宅等の経緯度情報を取得する。
【0118】
次に、管理サーバ1のCPU50は、
図19における、ステップS122において取得した経路情報に含まれる1または複数の経緯度情報と、ステップS120において取得した所定のゴルフ利用者U1aの自宅等の経緯度情報と、ステップS120において取得した選択ゴルフ場の経緯度情報と、からなる複数の経緯度情報である、経路上位置情報を生成する(S141)。
【0119】
そして、管理サーバ1のCPU50は、ステップS141で生成した経路上位置情報、及び、ステップS140で取得した対象利用者Utgの自宅等の経緯度情報を、地図情報サーバ4に送信する制御を行う(S142)。
【0120】
地図情報サーバ4が、経路上位置情報及び対象利用者Utgの自宅等の経緯度情報を受信すると、地図情報サーバ4のCPU60は、受信したこれらの情報に基づいて、対象利用者Utgの自宅等と、ステップS421で決定した経路との距離である経路外距離を算出する(S440)。ここで、経路外距離とは、後述する経路離脱点(route-departure point)と対象利用者Utgの自宅等との間の距離である。
ステップS440の経路外距離を算出する処理は、例えば、以下のとおりである。
まず、地図情報サーバ4のCPU60は、経路上位置情報に含まれる複数の経緯度情報に対応する複数の経路上の地点(つまり、経路上の交差点、所定のゴルフ利用者U1aの自宅等、及び、選択ゴルフ場。以下、これらを「経路上地点」と総称する場合がある)の各々と、対象利用者Utgの自宅等との距離を演算する。具体的には、地図情報サーバ4のCPU60は、ステップS120において取得した所定のゴルフ利用者U1aの自宅等と対象利用者Utgの自宅等との距離である第1距離、ステップS120において取得した選択ゴルフ場の経緯度情報と対象利用者Utgの自宅等との距離である第2距離、ステップS122において取得した経路情報に含まれる各経緯度情報に対応する交差点と対象利用者Utgの自宅等との距離である第3距離を、それぞれ演算する。
次に、地図情報サーバ4のCPU60は、演算結果として得られる距離のうちの最小値を、経路外距離として特定する。具体的には、地図情報サーバ4のCPU60は、第1距離、第2距離、及び、第3距離のうち、最小の距離を経路外距離とする。
そして、地図情報サーバ4のCPU60は、経路外距離を特定することにより、経路上位置情報が示す複数の経路上地点の中から、対象利用者Utgの自宅等からの距離が最も近い経路上地点を特定する。当該特定された経路上地点が、対象利用者Utgの経路離脱点(つまり、対象利用者Utgの自宅等に経由するために経路から離脱する地点)である。すなわち、経路外距離とは、対象利用者Utgの経路離脱点と、対象利用者Utgの自宅等との間の距離である。
なお、地図情報サーバ4のCPU60は、所定のゴルフ利用者U1aの対象利用者Utgが複数いる場合には、複数の対象利用者Utgの各々に対して、ステップS440の処理を実行する。
【0121】
次に、地図情報サーバ4のCPU60は、ステップS440で生成した経路外距離を示す情報を、管理サーバ1に送信する制御を行う(S441)。
【0122】
管理サーバ1が経路外距離を示す情報を受信すると、管理サーバ1のCPU50は、受信した経路外距離を示す情報を取得する(S143)。
そして、管理サーバ1のCPU50は、ステップS143で取得した経路外距離、つまり、対象利用者Utgの自宅等と対象利用者Utgの経路離脱点との距離が、所定の距離(以下では、所定の距離が「5km」である場合を想定して説明する)以下となるか否かを判定し、判定結果が肯定である場合には、当該対象利用者Utgを、所定のゴルフ利用者U1aの選択候補利用者Uselとして特定する(S144)。
これにより、「経路近傍利用者特定処理」が終了する。
【0123】
図26は、
図24に示すような経路が決定された場合において、所定のゴルフ利用者U1aの対象利用者Utgであるゴルフ利用者U1b〜U1fが、選択候補利用者Uselとして特定されるか否かを例示する説明図である。
図26に示す例では、ゴルフ利用者U1bの自宅等と、ノードNa2が示すゴルフ利用者U1bの経路離脱点との経路外距離が5km以下であり、ゴルフ利用者U1cの自宅等と、ノードNb1が示すゴルフ利用者U1cの経路離脱点との経路外距離が5kmよりも長く、ゴルフ利用者U1dの自宅等と、ノードNa1が示すゴルフ利用者U1dの経路離脱点との経路外距離が5kmよりも長く、ゴルフ利用者U1eの自宅等と、ノードNa12が示すゴルフ利用者U1eの経路離脱点との経路外距離が5km以下であり、ゴルフ利用者U1fの自宅等と、ノードNb3が示すゴルフ利用者U1fの経路離脱点との経路外距離が5km以下である。よって、この例では、ゴルフ利用者U1b〜U1fのうち、ゴルフ利用者U1b、U1e、及び、U1fのみが、選択候補利用者Uselとして特定されることになる。
【0124】
次に、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25に経路近傍友達選択画面G7を表示させるために必要な情報、すなわち、経路近傍友達選択画面G7の表示情報を生成する(S145)。経路近傍友達選択画面G7の表示情報には、ステップS144で特定した選択候補利用者Uselを表す情報が含まれる。
具体的には、管理サーバ1のCPU50は、ステップS102(
図7)で取得した個人情報(所定のゴルフ利用者U1aの直接SNS友達Ufの個人情報)、及び、ステップS108で取得した個人情報か(所定のゴルフ利用者U1aの間接SNS友達Uffの個人情報)ら、選択候補利用者Uselのプロフィール画像Pgのデータが格納されたアドレスを示すリンク情報と、選択候補利用者Uselの氏名と、を抽出する。そして、管理サーバ1のCPU50は、当該抽出したリンク情報及び氏名を含む経路近傍友達選択画面G7の表示情報を生成する。
次に、管理サーバ1のCPU50は、ステップS145で生成した経路近傍友達選択画面G7の表示情報を含む経路近傍友達選択画面閲覧応答を、所定のゴルフ利用者U1aの端末装置2に送信する制御を行う(S146)。
【0125】
所定のゴルフ利用者U1aの端末装置2が経路近傍友達選択画面閲覧応答を受信すると、端末装置2のCPU20はディスプレイ25に、経路近傍友達選択画面G7を表示する(S240)。
【0126】
管理サーバ1のCPU50は、ステップS120、及び、ステップS140を実行することにより位置情報取得部13として機能し、ステップS121、及び、ステップS122を実行することにより経路情報取得部14として機能し、ステップS141、ステップS142、及び、ステップS143を実行することにより経路外距離取得部15として機能し、ステップS144を実行することにより選択候補利用者特定部17として機能し、ステップS145を実行することにより表示情報生成部18として機能し、ステップS146を実行することにより送信制御部181として機能する。
また、地図情報サーバ4のCPU60は、ステップS421を実行することにより経路決定部41として機能し、ステップS440を実行することにより距離演算部42として機能する。
【0127】
このように、管理サーバ1は、地図情報サーバ4と連携して、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を移動するための経路のうち、所要時間が最小となる経路を決定するため、所定のゴルフ利用者U1aは、選択ゴルフ場に移動するための経路を自ら決定する手間から解放されるとともに、より短い時間で選択ゴルフ場に移動することが可能となる。
また、管理サーバ1は、地図情報サーバ4と連携して、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を移動するための経路の近傍に自宅等を有する対象利用者Utgを特定するため、ゴルフ誘うメンバーの選定を容易に行うことが可能となる。
【0128】
<3.6.経路の近傍のゴルフ利用者を選択する画面について>
所定のゴルフ利用者U1aの端末装置2が、経路近傍友達選択画面G7の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図27に例示する経路近傍友達選択画面G7を表示させる。
図27に例示するように、経路近傍友達選択画面G7は、地図表示ボタンB71、メッセージ送信ボタンB73、前の画面であるゴルフ場選択画面G6に戻るための戻るボタンB72、経路近傍友達選択画面G7を閉じるための閉じるボタンB74を含む。また、経路近傍友達選択画面G7の表示エリアA71には、所定のゴルフ利用者U1aの選択候補利用者Uselを表す情報(選択候補利用者Uselのプロフィール画像Pg及び氏名)が一覧表示されるとともに、選択候補利用者Uselを選択するためのチェックボックスCB71が各選択候補利用者Uselを表す情報と1対1に対応するように設けられている。
なお、
図27に例示する選択候補利用者Uselには、経路近傍利用者特定処理によって特定された所定のゴルフ利用者U1aの選択候補利用者Uselである3名のゴルフ利用者U1(U1b、U1e、及び、U1f)を表す情報(プロフィール画像Pg[U1b]、Pg[U1e]、Pg[U1f]、並びに、ゴルフ利用者U1b、U1e、及び、U1fの各々の氏名)が表示されている。
【0129】
図27に示す経路近傍友達選択画面G7において、少なくとも1名以上の選択候補利用者Uselが選択された状態(つまり、チェックボックスCB71のうち少なくとも1つがチェックされた状態)で、メッセージ送信ボタンB73がクリックされると、選択された選択候補利用者Uselをゴルフに誘う処理が実行される。当該ゴルフに誘う処理は、ゴルフ友達選択画面G2(
図13)においてメッセージ送信ボタンB23がクリックされる場合に実行される処理と同様である。
【0130】
また、
図27に示す経路近傍友達選択画面G7において、少なくとも1名以上の選択候補利用者Uselが選択された状態で、地図表示ボタンB71がクリックされると、所定のゴルフ利用者U1aの自宅等と、選択ゴルフ場との間を、選択された選択候補利用者Uselの自宅等を経由して移動するための経路が表示される。
例えば、
図27に示すように、経路近傍友達選択画面G7においてゴルフ利用者U1e及びゴルフ利用者U1fが選択された状態で地図表示ボタンB71がクリックされると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの自宅等の経緯度情報、選択ゴルフ場の経緯度情報、及び、経路近傍友達選択画面G7において選択された選択候補利用者Usel(ゴルフ利用者U1e、及び、U1f)の自宅等の経緯度情報を取得し、これらを地図情報サーバ4に送信する制御を行う。そして、地図情報サーバ4のCPU60は、送信された複数の経緯度情報に基づいて、所定のゴルフ利用者U1aの自宅等と、選択ゴルフ場との間を、経路近傍友達選択画面G7において選択された選択候補利用者Uselの自宅等を経由して移動するための経路のうち、所要時間が最小となる経路を決定し、当該決定した経路に係る情報(ステップS421で決定された経路情報(以下、この段落では「第1経路情報」と称する)と区別するため、以下では「第2経路情報」と称する)を、管理サーバ1に送信する制御を行う。
管理サーバ1のCPU50は、地図情報サーバ4が送信した第2経路情報に基づいて、所定のゴルフ利用者U1aの自宅等から、ゴルフ利用者U1fの自宅等及びゴルフ利用者U1eの自宅等を経由して、選択ゴルフ場に至る経路を表す地図を含む表示情報を生成し、これを、所定のゴルフ利用者U1aの端末装置2に送信する制御を行う。
その結果、所定のゴルフ利用者U1aの端末装置2のディスプレイ25には、
図28に示すような、所定のゴルフ利用者U1aの自宅等から、ゴルフ利用者U1fの自宅等及びゴルフ利用者U1eの自宅等を経由して、選択ゴルフ場に至る経路を表す地図が表示される。なお、
図28に示すように、経路近傍友達選択画面G7の地図表示ボタンB71がクリックされた場合に表示される経路(第2経路情報が示す経路)は、
図24または
図26に示す経路決定処理で決定された経路(第1経路情報が示す経路)とは異なる場合がある。
【0131】
このように、所定のゴルフ利用者U1aは、実際にゴルフに誘うメンバーを決定したのちに、改めて、自宅から選択ゴルフ場までの経路を確認することができるため、より短い時間で選択ゴルフ場に移動することが可能となる。
【0132】
<3.7.住所登録画面について>
図6に示すゴルフ友達一覧画面G1において所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]がクリックされた場合、端末装置2は、管理サーバ1に対して、住所登録画面G8の閲覧要求を送信する。管理サーバ1が住所登録画面G8の閲覧要求を受信すると、管理サーバ1のCPU50は、所定のゴルフ利用者U1aの端末装置2のCPU20がディスプレイ25に住所登録画面G8を表示させるために必要な情報である、住所登録画面G8の表示情報を生成し、当該表示情報を含む応答を、所定のゴルフ利用者U1aの端末装置2に送信する。
所定のゴルフ利用者U1aの端末装置2が住所登録画面G8を表示の表示情報を受信すると、端末装置2のCPU20は、ディスプレイ25に、
図29に例示する住所登録画面G8を、例えばポップアップで表示させる。なお、本実施形態は、住所登録画面G8を、ポップアップで表示するが、ゴルフ友達一覧画面G1を住所登録画面G8に切り替えることで表示させてもよい。また、本実施形態では所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]がクリックされると、住所登録画面G8の表示要求が端末装置2から管理サーバ1に送信されることとしているが、所定のゴルフ利用者U1aのプロフィール画像Pg[U1a]がクリックされると、所定のゴルフ利用者U1aのプロフィール情報の表示要求を端末装置2から管理サーバ1に行い、所定のゴルフ利用者U1aのプロフィール情報が端末装置2に表示され、そのプロフィール情報表示画面(図示省略)中に住所登録画面G8を表示させるための住所登録ボタン(図示省略)を設けることとしてもよい。この場合、当該住所登録ボタンがクリックされると、端末装置2から住所登録画面G8を表示させる旨の要求が管理サーバ1に送信され、管理サーバ1のCPU50は住所登録画面G8の表示情報を生成し、当該表示情報を含む応答を端末装置2に送信する。
【0133】
図29に例示するように、住所登録画面G8は、プルダウンPD81〜PD84、地図表示ボタンB81、決定ボタンB82、並びに、住所登録画面G8を閉じるための閉じるボタンB83を含む。所定のゴルフ利用者U1aは、プルダウンPD81〜PD84を用いて、所定のゴルフ利用者U1aの自宅等の住所を入力することができる。また、地図表示ボタンB81がクリックされた場合、所定のゴルフ利用者U1aのディスプレイ25には、地図を表した画面(図示省略)が表示される。所定のゴルフ利用者U1aは、当該地図を表した画面を用いて、所定のゴルフ利用者U1aの自宅等の住所を入力することもできる。なお、住所の入力は、上述した地域選択画面G3、都道府県選択画面G4等と同様の画面を用いて行われるものであってもよい。
【0134】
自宅等の住所が入力された状態で、決定ボタンB82がクリックされると、所定のゴルフ利用者U1aの端末装置2は、入力された住所情報を含む情報を、管理サーバ1に送信する。
管理サーバ1は、所定のゴルフ利用者U1aの端末装置2から送信された所定のゴルフ利用者U1aの自宅等の住所情報を受信すると、当該住所情報に対応する経緯度情報を問い合わせることを示すパラメータを含む要求を、地図情報サーバ4に送信する。
地図情報サーバ4は、当該要求を受信すると、
図30に示す住所情報テーブルTBL43を参照することで、送信されたパラメータに含まれる住所情報に対応する経緯度情報を取得し、取得した経緯度情報を含む応答を管理サーバ1に送信する。
図30に住所情報テーブルTBL43のデータ構造を示す。住所情報テーブルTBL43には複数のレコードが記録されている。1つのレコードは、住所情報及び経緯度情報を含む。なお、各レコードは、これ以外の項目を含んでいるものであってもよい。例えば、住所情報として郵便番号を含むものであってもよい。
【0135】
管理サーバ1が地図情報サーバ4からの応答を受信すると、管理サーバ1のCPU50は、ゴルフ利用者情報テーブルTBL11(
図22)にアクセスし、所定のゴルフ利用者U1aの識別情報UIDが記録されたレコードを特定する。
次に、管理サーバ1のCPU50は、特定したレコードに、所定のゴルフ利用者U1aの端末装置2から受信した住所情報を記録するとともに、地図情報サーバ4から受信した経緯度情報を記録する。
【0136】
<変形例>
本発明は、上述した各実施形態に限定されるものではなく、以下に述べる各種の変形が可能である。また、各変形例及び各実施形態は、適宜、組み合わせてもよいことは勿論である。
【0137】
<変形例1>
上述した実施形態では、経路外距離取得部15(管理サーバ1のCPU50)は、経路決定処理において生成された経路情報に含まれる1または複数の経緯度情報の全てを、経路上位置情報とするが(上述したステップS141(
図25))、経路情報に含まれる1または複数の経緯度情報のうち一部を経路上位置情報とするものであってもよい。
例えば、経路情報に含まれる1または複数の経緯度情報に対応する1または複数の交差点のうち、特定の属性を有する交差点である特定交差点(「特定中継候補地点」の一例)を除外した対象交差点(「対称中継地点」の一例)に係る位置情報のみを、経路上位置情報に含めることで、経路近傍利用者特定処理を実行するものであってもよい。より具体的には、交差点種別が「1」または「2」である交差点を対象交差点とし、当該対象交差点の経緯度情報のみを、経路上位置情報に含めることで、経路近傍利用者特定処理を実行するものであってもよい。すなわち、高速道路同士が交差する交差点(交差点種別が「4」であるジャンクション)、及び、高速道路と一般道路とが交差する交差点(交差点種別が「3」であるインターチェンジ)からなる交差点を特定交差点とし、当該特定交差点の経緯度情報を、経路上位置情報に含めずに、経路近傍利用者特定処理を実行するものであってもよい。
図31は、地図情報及び対象利用者Utgの自宅等の位置が
図26に示す例と同様である場合において、経路情報に含まれる1または複数の経緯度情報の全てを経路上位置情報とするかわりに、交差点種別が「1」または「2」である対象交差点の経緯度情報のみを経路上位置情報とする場合に、経路近傍利用者特定処理で特定される選択候補利用者Uselを表す説明図である。
図31に示す例では、経路情報に対応する交差点を表すノードNa1、Na2、Na3、Nb1、Nb2、Nb3、Nb5、Na12、及び、Na14のうち、特定交差点を表すノードNb1、Nb2、Nb3、及び、Nb5(
図31において、白色のノード)の経緯度情報が、経路上位置情報から除外されている。そのため、例えば、ゴルフ利用者U1fの経路離脱点は、
図26に示す例ではノードNb3の示す交差点であったのに対して、
図31に示す例ではノードNa3の示す交差点となる。その結果、ゴルフ利用者U1fは、
図26に示す例では選択候補利用者Uselに該当するが、
図31に示す例では選択候補利用者Uselに該当しなくなる。
すなわち、
図26に示す例では、インターチェンジを表すノードNb3において、高速道路から一般道路に出たうえで、ゴルフ利用者U1fの自宅等に寄る必要があるため、たとえ、ゴルフ利用者U1fの自宅等が、ノードNb3で表される交差点(インターチェンジ)の近傍に位置する場合であっても、移動に係る所要時間が大きく増大する。つまり、所定のゴルフ利用者U1aは、ゴルフ利用者U1fの自宅等を経由して選択ゴルフ場に移動する場合には、
図28に示すように、ゴルフ利用者U1fの自宅等から選択ゴルフ場までは一般道路を利用することになり、
図26に示す最短経路よりも高速道路利用区間が縮小する。その結果、ゴルフ利用者U1fの自宅等を経由しない場合と比較して、移動に係る所要時間が大きく増大する。
これに対して、本変形例のように、交差点種別が「1」または「2」である対象交差点(つまり、この例では、一般道路同士が交差する交差点)の経緯度情報のみを、経路上位置情報に含めるため、高速道路を移動している途中で一般道路に出ることなく移動することが可能となる。その結果、本変形例では、上述した実施形態に比べて、選択候補利用者Uselの自宅等を経由することによる移動に係る所要時間の増加の程度を小さく抑えることが可能となる。
【0138】
<変形例2>
上述した実施形態及び変形例において、経路外距離取得部15(管理サーバ1のCPU50)は、経路決定処理において生成された経路情報に含まれる1または複数の経緯度情報の一部または全部と、所定のゴルフ利用者U1aの自宅等の経緯度情報と、選択ゴルフ場の経緯度情報と、からなる複数の経緯度情報を、経路上位置情報とするが(上述したステップS141(
図25))、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報のみを経路上位置情報とするものであってもよい。
すなわち、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を移動する場合に、所定のゴルフ利用者U1aの自宅等から所定距離内(例えば、10km以下の範囲)に自宅等が存在する対象利用者Utgと、選択ゴルフ場から所定距離内に自宅等が存在する対象利用者Utgとを、選択候補利用者Uselとするものであってもよい。
例えば、
図32に示す例のように、移動の起点である所定のゴルフ利用者U1aの自宅等から所定距離(例えば、10km)内に位置するゴルフ利用者U1bの自宅等と、移動の終点である選択ゴルフ場から所定距離内に位置するゴルフ利用者U1eの自宅等とを経由する場合、高速道路から一般道路に出て再び高速道路に戻るような手間が発生する可能性も低く、移動に係る所要時間を大きく増大させるものではない。よって、本変形例では、選択候補利用者Uselの自宅等を経由する場合であっても、移動に係る所要時間を大きく増大させることなく移動することが可能となる。
【0139】
すなわち、上述した実施形態では、経路外距離取得部15は、経路決定処理において生成された経路情報に含まれる1または複数の経緯度情報と、所定のゴルフ利用者U1aの自宅等の経緯度情報と、選択ゴルフ場の経緯度情報と、からなる複数の経緯度情報の全てを経路上位置情報として送信するものであったが、当該複数の経緯度情報のうち、一部または全部(少なくとも1つ)を、経路上位置情報とするものであってもよい。
【0140】
<変形例3>
上述した実施形態及び変形例において、経路決定部41(地図情報サーバ4のCPU60)は、ある2つの地点の位置をそれぞれ表す2つの経緯度情報に基づいて、当該ある2つの地点の間を移動するための経路を決定するものであるが(上述したステップS421(
図19))、ある2つの地点の位置をそれぞれ表す2つの経緯度情報と、経由地点の経緯度情報とに基づいて、2つの地点の間を経由地点を経由して移動するための経路を決定するものであってもよい。
すなわち、経路決定部41は、所定のゴルフ利用者U1aの自宅等の経緯度情報、選択ゴルフ場の経緯度情報、及び、対象利用者Utgのうち所定の対象利用者Utgxの自宅等の経緯度情報に基づいて、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を、所定の対象利用者Utgxの自宅等を経由して移動するための経路を決定するものであってもよい。
この場合、経路情報取得部14(ステップS121(
図19)を参照)は、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報を地図情報サーバ4に対して送信するのに加え、所定の対象利用者Utgxの自宅等の経緯度情報を、経由地点の経緯度情報として、地図情報サーバ4に対して送信する。
また、この場合、経路外距離取得部15(ステップS141(
図25)を参照)は、経路情報に含まれる1または複数の経緯度情報、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報に加え、所定の対象利用者Utgxの自宅等の経緯度情報を含むように、経路上位置情報を生成するものであってもよい。そして、経路外距離取得部15(ステップS142を参照)は、生成した経路上位置情報と、対象利用者Utgのうち所定の対象利用者Utgxを除いたゴルフ利用者U1である特定対象利用者Utgyの自宅等の経緯度情報を、地図情報サーバ4に対して送信する制御を行うものであればよい。
また、この場合、距離演算部42(ステップS440参照)は、対象利用者Utgのうち、所定の対象利用者Utgxを除いたゴルフ利用者U1である特定対象利用者Utgyについてのみ、経路外距離を算出するものであればよい。
【0141】
例えば、ゴルフに行く場合、同伴者が予め決まっていることがある。この場合、所定のゴルフ利用者U1aの自宅等から、同伴者の自宅等を経由して、選択ゴルフ場に移動するための経路を決定する必要がある。この場合、
図26等に示す例のように、単に、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場の間を移動するための経路を求めても、所定のゴルフ利用者U1aが実際に移動する経路(同伴者の自宅等を経由する経路)とは大きく異なる経路となり、所定のゴルフ利用者U1aにとっては役に立たない可能性がある。
これに対して、本変形例によれば、
図33に示す例のように、一緒にゴルフに行くことを予定している同伴者(所定の対象利用者Utgx)であるゴルフ利用者U1dがいる場合には、当該ゴルフ利用者U1dの自宅等を経由して選択ゴルフ場に移動する経路を決定することができる。なお、
図33に示す例では、距離演算部42は、ゴルフ利用者U1d(所定の対象利用者Utgx)の自宅等を経由して選択ゴルフ場に移動する経路と、ゴルフ利用者U1dを除く対象利用者Utg(特定対象利用者Utgy)の自宅等との距離を、経路外距離として算出することで、選択候補利用者Uselを決定する。
【0142】
<変形例4>
上述した実施形態及び変形例では、距離演算部42は、ある一の地点の位置を表す経緯度情報と、ある経路上の1または複数の地点に対応する1または複数の経緯度情報である経路上位置情報とに基づいて、当該ある一の地点と当該ある経路との距離を演算するものであるが(上述したステップS440(
図25))、2つの地点の経緯度情報に基づいて、当該2つの地点の間の距離を演算するものであってもよい。
この場合、経路外距離取得部15は、経路情報に含まれる交差点の経緯度情報と対象利用者Utgの自宅等の経緯度情報との組合せ、所定のゴルフ利用者U1aの自宅等の経緯度情報と対象利用者Utgの自宅等の経緯度情報との組合せ、及び、対象ゴルフ場の経緯度情報と対象利用者Utgの自宅等の経緯度情報との組合せからなる、複数の組合せのうち、一部または全部の組合せのそれぞれ地図情報サーバ4に送信し、地図情報サーバ4の距離演算部42が、送信された経緯度情報の組合せのそれぞれに基づいて算出した距離のうち最小のものを、経路外距離として取得するものであってもよい。
【0143】
<変形例5>
上述した実施形態及び変形例では、経路情報取得部14及び経路外距離取得部15は、地図情報サーバ4に対して経緯度情報を送信するものであるが、住所情報を送信するものであってもよい。管理サーバ1から地図情報サーバ4に対して送信する情報は、位置を特定することのできる情報であれば、どのような情報であってもよい。
また、上述した実施形態及び変形例では、位置情報取得部13は、ゴルフ利用者U1の自宅等、及び、ゴルフ場等の経緯度情報を取得するものであるが、住所情報を取得するものであってもよい。位置情報取得部13が取得する情報は、位置を特定することのできる情報であれば、どのような情報であってもよい。
【0144】
<変形例6>
上述した実施形態及び変形例では、2つの地点の間を移動する際に用いる交通手段として自動車を例示したが、本発明はこれに限定されるものではなく、2つの地点の間を移動する手段として自動車以外の任意の手段を用いるものであってもよい。例えば、移動の手段として、鉄道、航空機、自転車、徒歩、または、これらの組合せであってもよい。
また、上述した実施形態及び変形例において、2つの地点の間を移動する場合に経由する可能性のある場所である中継候補地点として交差点を例示したが、本発明はこれに限定されるものではなく、移動において経由する可能性のある場所であればどのような場所であってもよい。例えば、鉄道の駅、空港、港、またはこれらの組合せであってもよい。
【0145】
<変形例7>
上述した実施形態及び変形例では、経路決定部41は、2つの地点の移動に要する所要時間が最小となる経路を決定するものであるが、本発明はこれに限定されるものではなく、移動に係る負荷の大きさの程度を表す指標値を最小化する経路を決定するものであればよい。移動に係る負荷の大きさの程度を表す指標値とは、所要時間(厳密には、所要時間の長さの程度を表す値)の他に、交通費(移動に係る交通費の高さの程度を表す値)、移動距離(移動距離の長さの程度を表す値)、鉄道やバスなどの交通機関で移動する場合の乗換の回数(乗換回数の多さの表す値)、自動車で移動する場合の渋滞の激しさの程度を表す値、または、これらの組合せ、等でもよい。
【0146】
<変形例8>
上述した実施形態及び変形例では、経路決定部41は、1つのグラフを用いて表される地図情報により経路を決定したが、2以上のグラフを用いて表される地図情報により経路を決定するものであってもよい。
例えば、
図26に示す例の場合、経路決定部41は、高速道路のみを表す地図情報(グラフ)、及び、一般道路のみを表す地図情報(グラフ)、という階層的な2つの地図情報を用いて経路を決定するものであってもよい。要するに、経路決定部41は、2つの地点の間を移動するための経路を、移動に係る負荷の大きさの程度を表す何らかの指標に基づいて決定するものであれば、どのようなものであってもよい。
【0147】
<変形例9>
上述した実施形態及び変形例において、サービス提供システム100は地図情報サーバ4を備えるが、地図情報サーバ4を備えず、管理サーバが地図情報サーバ4により実現される機能を備えるものであってもよい。
図34は、本変形例に係るサービス提供システム100Aのブロック図である。サービス提供システム100Aは、地図情報サーバ4を備えない点、及び、管理サーバ1の代わりに管理サーバ1Aを備える点を除き、上述したサービス提供システム100と同様に構成されている。
管理サーバ1Aは、経路決定部41及び距離演算部42を備える点、並びに、記憶部19に交差点情報テーブルTBL41、道路情報テーブルTBL42、住所情報テーブルTBL43を格納している点を除き、管理サーバ1と同様に構成されている。
すなわち、本変形例に係る管理サーバ1Aは、例えば、ゴルフ利用者U1にゴルフ情報アプリケーションサービスを提供するものであって、ゴルフ利用者U1を一意に識別する識別情報UIDを取得する利用者情報取得部11と、ゴルフ利用者U1同士の特定の関係を表す友達情報を取得する友達情報取得部12と、ゴルフ利用者U1の自宅等の経緯度情報、及び、ゴルフ場の経緯度情報を取得する位置情報取得部13と、少なくとも、所定のゴルフ利用者U1aの識別情報UIDと友達情報とに基づいて、所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び所定のゴルフ利用者U1aの間接ゴルフ友達Uggを対象利用者Utgとして特定する対象利用者特定部16と、所定のゴルフ利用者U1aの自宅等の経緯度情報とゴルフ場の経緯度情報とに基づいて、所定のゴルフ利用者U1aの自宅等と当該ゴルフ場との間を移動するための経路を決定する経路決定部41と、対象利用者Utgの自宅等と経路決定部41が決定した経路との距離を経路外距離として演算する距離演算部42と、距離演算部42が演算した経路外距離が所定値以下となる対象利用者Utgを、選択候補利用者Uselとして特定する選択候補利用者特定部17と、選択候補利用者特定部17が特定した選択候補利用者Uselを表す情報を含む表示情報を生成する表示情報生成部18と、表示情報生成部18が生成した表示情報を所定のゴルフ利用者U1aの端末装置2に送信する制御を行う送信制御部181を備えるものであればよい。
【0148】
<変形例10>
上述した実施形態及び変形例に係るサービス提供システム(サービス提供システム100、または、サービス提供システム100A)では、外部管理サーバ3において友達情報を管理し、管理サーバ(管理サーバ1、または、管理サーバ1A)は、友達情報を独自に管理していないが、本発明はこのような態様に限定されるものではなく、管理サーバで友達情報を独自に管理するものであってもよい。
図35に、本変形例に係るサービス提供システム100Bを示す。サービス提供システム100Bは、外部管理サーバ3を備えない点、及び、管理サーバ1の代わりに管理サーバ1Bを備える点を除いて、実施形態に係るサービス提供システム100と同様である。管理サーバ1Bは、記憶部19にゴルフ友達情報テーブルTBL14が記憶されている点で、管理サーバ1と相違する。
図36に、ゴルフ友達情報テーブルTBL14のデータ構造を示す。ゴルフ友達情報テーブルTBL14には複数のレコードが記録されている。1つのレコードは、ゴルフの友達情報、すなわち、アクション元の識別情報、アクション先の識別情報、ステータス、及び、申請日時を含む。アクション元は、ゴルフ友達申請を送信したゴルフ利用者U1であり、アクション先は、ゴルフ友達申請を受信したSNS利用者U2である。ステータスは、ゴルフ友達申請の状態を示し、申請中が「0」、承諾が「1」で表される。
このサービス提供システム100Bでは、上述した実施形態及び変形例のようにゴルフ利用者U1がSNS利用者U2に含まれるといった関係はない。すなわち、
図37に示すように、管理サーバ1Bは、所定のゴルフ利用者U1aと友達関係を有するゴルフ利用者U1を、所定のゴルフ利用者U1aの直接ゴルフ友達Ugとして管理する。また、管理サーバ1Bは、所定のゴルフ利用者U1aと友達関係を有する直接ゴルフ友達Ugと更に友達関係を有するゴルフ利用者U1を、所定のゴルフ利用者U1aの間接ゴルフ友達Uggとして管理する。すなわち、管理サーバ1Bは、記憶部19に記憶されている友達情報及び所定のゴルフ利用者U1aの識別情報UIDに基づいて、所定のゴルフ利用者U1aと友達関係を有するゴルフ利用者U1である直接ゴルフ友達Ug、及び、当該直接ゴルフ友達Ugと友達関係を有するゴルフ利用者U1である間接ゴルフ友達Uggを対象利用者Utgとして特定可能な対象利用者特定部16を備える。
なお、この場合、記憶部19には、ゴルフ利用者U1の個人情報(つまり、氏名、年齢、プロフィール画像Pgの格納先、等)が記憶されていることが好ましい。また、本変形例における友達情報取得部12は、記憶部19から友達情報を取得するものであればよい。
【0149】
<変形例11>
上述した実施形態及び変形例に係るサービス提供システムでは、管理サーバ(管理サーバ1、1A、1B)は、記憶部19を備えるが、本発明はこのような構成に限定されるものではなく、管理サーバは記憶部19を備えないものであってもよい。
図38に、本変形例に係るサービス提供システム100Cを示す。サービス提供システム100Cは、データベースサーバ7を備える点、及び、管理サーバ1の代わりに管理サーバ1Cを備える点を除いて、実施形態に係るサービス提供システム100と同様である。管理サーバ1Cは、記憶部19を備えない点を除き、管理サーバ1と同様に構成される。データベースサーバ7は、ゴルフ利用者情報テーブルTBL11、及び、ゴルフ場情報テーブルTBL12(変形例9に係る場合は、これらに加え、交差点情報テーブルTBL41、及び、道路情報テーブルTBL42。変形例10に係る場合は、これらに加え、ゴルフ友達情報テーブルTBL14)を格納した記憶部を備える。管理サーバ1Cが備える、利用者情報取得部11、友達情報取得部12、位置情報取得部13、経路情報取得部14、経路外距離取得部15、対象利用者特定部16、選択候補利用者特定部17、及び、表示情報生成部18(変形例9に係る場合は、これらに加え、経路決定部41、及び、距離演算部42)は、必要に応じてデータベースサーバ7にアクセスし、データベースサーバ7に格納された各種テーブルに記憶されている各種データを参照及び取得可能である。
【0150】
<変形例12>
上述した実施形態及び変形例に係る対象利用者特定部16は、所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び所定のゴルフ利用者U1aの間接ゴルフ友達Uggを、所定のゴルフ利用者U1aの対象利用者Utgとして特定するが、本発明はこれに限定されるものではなく、直接ゴルフ友達Ugを対象利用者Utgとして特定するものであってもよい。この場合、対象利用者特定部16は、間接ゴルフ友達Uggを特定しないものであってもよい。
また、対象利用者特定部16は、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定したうえで、間接ゴルフ友達Uggのみを対象利用者Utgとして特定するものであってもよい。
更に、対象利用者特定部16は、直接ゴルフ友達Ug及び間接ゴルフ友達Uggを特定したうえで、直接ゴルフ友達Ugのみを対象利用者Utgとして特定するものであってもよい。
要するに、対象利用者特定部16は、所定のゴルフ利用者U1aの直接ゴルフ友達Ug及び所定のゴルフ利用者U1aの間接ゴルフ友達Uggの、一部または全部を、所定のゴルフ利用者U1aの対象利用者Utgとして特定するものであればよい。
【0151】
<変形例13>
上述した実施形態及び変形例では、所定のゴルフ利用者U1aの選択候補利用者Uselを、所定のゴルフ利用者U1aの対象利用者Utgの中から特定するが、本発明はこのような態様に限定されるものではなく、所定のゴルフ利用者U1aの選択候補利用者Uselは、他のゴルフ利用者U1t(「他の利用者」の一例)の中から特定されるものであればよい。ここで、「他の利用者」は、所定のゴルフ利用者U1aを除き、所定のゴルフ利用者U1aの対象利用者Utgを含み、更に所定のゴルフ利用者U1aの対象利用者Utg以外のゴルフ利用者を含む概念である。
図39に、本変形例に係るサービス提供システム100Dの一例を示す。
図39に示すように、サービス提供システム100Dは、外部管理サーバ3を備えない点、及び、管理サーバ1の代わりに管理サーバ1Dを備える点を除いて、実施形態に係るサービス提供システム100と同様である。管理サーバ1Dは、友達情報取得部12、及び、対象利用者特定部16を備えない点を除いて、実施形態に係る管理サーバ1と同様である。
【0152】
本変形例に係る経路近傍利用者特定処理は、上述した実施形態及び変形例に係る経路近傍利用者特定処理において登場する「対象利用者Utg」を、「他のゴルフ利用者U1t」に置き換えた処理である。
すなわち、管理サーバ1DのCPU(経路外距離取得部15)は、上述したステップS142(
図25)の処理において、対象利用者Utgの自宅等の経緯度情報の代わりに、他のゴルフ利用者U1tの自宅等の経緯度情報を送信する。
また、管理サーバ1DのCPU(距離演算部42)は、上述したステップS440(
図25)の処理において、経路決定部41が決定した経路と対象利用者Utgの自宅等との距離の代わりに、経路決定部41が決定した経路と他のゴルフ利用者U1tの自宅等との距離を、経路外距離として算出する。
そして、管理サーバ1DのCPU(選択候補利用者特定部17)は、上述したステップS144(
図25)の処理において、経路外距離が所定の距離以下となる対象利用者Utgの代わりに、他のゴルフ利用者U1tのうち経路外距離が所定の距離以下となる他のゴルフ利用者U1tを、選択候補利用者Uselとして特定する。
なお、本変形例では、ゴルフ利用者情報テーブルTBL11に、ゴルフ利用者U1の個人情報が記憶されていることが好ましい。
【0153】
なお、本変形例において、経路決定部41(管理サーバ1DのCPU)は、ステップS421(
図19)で、上述した変形例3のように、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を、同伴者であるゴルフ利用者U1(「同伴利用者」の一例。以下では、同伴ゴルフ利用者U1txと称する)の自宅等を経由して移動する経路を決定するものであってもよい。この場合、ゴルフ利用者U1から、所定のゴルフ利用者U1aと同伴ゴルフ利用者U1txとを除いたゴルフ利用者U1を、他のゴルフ利用者U1tとすればよい。
すなわち、この場合、経路情報取得部14(ステップS121(
図19)を参照)は、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報を地図情報サーバ4に対して送信するのに加え、同伴ゴルフ利用者U1txの自宅等の経緯度情報を、経由地点の経緯度情報として、地図情報サーバ4に対して送信する。
また、この場合、経路決定部41(ステップS421を参照)は、所定のゴルフ利用者U1aの自宅等の経緯度情報、選択ゴルフ場の経緯度情報、及び、同伴ゴルフ利用者U1txの自宅等の経緯度情報に基づいて、所定のゴルフ利用者U1aの自宅等と選択ゴルフ場との間を、同伴ゴルフ利用者U1txの自宅等を経由して移動するための経路を決定するものであってもよい。
また、この場合、経路外距離取得部15(ステップS141(
図25)を参照)は、経路情報に含まれる1または複数の経緯度情報、所定のゴルフ利用者U1aの自宅等の経緯度情報、及び、選択ゴルフ場の経緯度情報に加え、同伴ゴルフ利用者U1txの自宅等の経緯度情報を含むように、経路上位置情報を生成するものであってもよい。そして、経路外距離取得部15(ステップS142を参照)は、生成した経路上位置情報と、ゴルフ利用者U1から所定のゴルフ利用者U1aと同伴ゴルフ利用者U1txとを除いたゴルフ利用者U1である他のゴルフ利用者U1tの自宅等の経緯度情報を、地図情報サーバ4に対して送信する制御を行うものであればよい。
また、この場合、距離演算部42(ステップS440(
図25)参照)は、ゴルフ利用者U1のうち、所定のゴルフ利用者U1aと同伴ゴルフ利用者U1txとを除いたゴルフ利用者U1である他のゴルフ利用者U1tについてのみ、経路外距離を算出するものであればよい。
また、この場合、選択候補利用者特定部17(ステップS144(
図25)参照)は、他のゴルフ利用者U1tのうち、経路外距離が所定の距離以下となる他のゴルフ利用者U1tを、選択候補利用者Uselとして特定するものであればよい。
【0154】
なお、
図39は、本変形例に係るサービス提供システム100Dの一例を示すものに過ぎない。
本変形例に係るサービス提供システム100Dは、変形例9において説明したように、地図情報サーバ4を備えないものであってもよい。この場合、管理サーバ1Dは、経路決定部41及び距離演算部42を備え、また、記憶部19に交差点情報テーブルTBL41及び道路情報テーブルTBL42並びに住所情報テーブルTBL43を格納していればよい。
また、サービス提供システム100Dは、変形例10において説明したように、データベースサーバ7を備えるものであってもよい。この場合、管理サーバ1Dは、記憶部19を備えないものであってもよい。
また、サービス提供システム100Dは、上述した実施形態及び変形例のように、外部管理サーバ3を備える(または、記憶部19にゴルフ友達情報テーブルTBL14を記憶する)ものであってもよい。この場合、管理サーバ1Dは、友達情報取得部12及び対象利用者特定部16を備えるものであっても構わない。そして、この場合、所定のゴルフ利用者U1aが、マイページにおいて、ゴルフ利用者U1のうち他のゴルフ利用者U1tの中から選択候補利用者Uselを特定するか、または、対象利用者Utgの中から選択候補利用者Uselを特定するか、のいずれかを選択できるものであってもよい。
【0155】
<変形例14>
上述した実施形態及び変形例に係る管理サーバ(管理サーバ1、1A、1B、1C、または、1D)は、端末装置2と通信が可能であるが、本発明はこれに限定されるものではなく、管理サーバは、端末装置2と通信を行わないものであってもよい。
例えば、端末装置2と通信を行うことのできるWebサーバが存在する場合、管理サーバは、当該Webサーバとの間で通信を行うことのできるものであってもよい。この場合、管理サーバは、送信制御部181を備えないものであってもよい。
【0156】
<変形例15>
上述した実施形態及び変形例に係るサービス提供システムは、ゴルフ利用者U1に住所登録画面G8を含むマイページを提供し、ゴルフ利用者U1は当該住所登録画面G8から自宅等の住所を登録することができるが、本発明はこれに限定されるものではなく、ゴルフ利用者U1の端末装置2が例えば、携帯電話機、スマートフォン、等の場合、端末装置2の備えるGPS機能を用いて自宅等の住所または経緯度を登録できるものであってもよい。
【0157】
<変形例16>
上述した実施形態及び変形例では、管理サーバ(管理サーバ1、1A、1B、1C、1D等)が提供するサービスとして、ゴルフ情報アプリケーションサービスを例示して説明したが、本発明はこれに限定されるものではなく、管理サーバは、所定の対象に関するサービスであれば、どのようなサービスを提供するものであればよい。
ここで、所定の対象は、水泳、スキー、テニス等、スポーツに関するもの、または、映画、音楽、ゲーム、旅行等、趣味に関するものでもよいし、ビジネスに関するものでもよい。
また、上述した実施形態及び変形例において、位置情報取得部13は、ゴルフ場の経緯度情報を取得するものであるが、ゴルフ場に限らず、所定の対象に関する施設の経緯度情報を取得するものであればよい。ここで、「所定の対象に関する施設」とは、所定の対象が水泳である場合には、プールや海水浴場等が該当し、所定の対象がスキーである場合には、スキー場等が該当し、所定の対象が映画である場合には、映画館等が該当する。
また、特定の関係は、友達関係に限定されない。例えば、上司と部下の関係であってもよいし、問屋と小売の関係であってもよい。要は、一定の規則に基づいて構築される関係であればどのようなものであってもよい。
【0158】
<変形例17>
上述した実施形態及び変形例では、利用者同士の階層的な特定の関係を表示させる装置として、管理サーバ1(または、1A、1B、1C、1D)及び端末装置2を一例として説明したが、本発明はこれに限定されるもではなく、パーソナルコンピュータ等の情報処理装置であってもよい。
なお、本発明における機能を実現するためのプログラムをコンピュータで読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することとしてもよい。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスクドライブ等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。また、本発明における機能またはその一部を実現するためのプログラムを配信する配信サーバ及び当該配信サーバに備えられた記憶媒体、及び当該配信サーバの外部に存在し、当該プログラムを前記配信サーバにより配信するために記憶している記憶媒体も、本発明の範囲に含むものとする。