以下、本発明の実施形態について、図面を参照しながら説明する。なお、以下の実施形態は、通信端末装置と、当該通信端末装置とネットワークを介して接続され情報提供サーバ装置と、を有する通信システムに対し、本発明に係るサーバ装置、プログラム及び通信システムを適用した場合の実施形態である。
[1]通信システムの概要
[1.1]通信システムの構成の概要
まず、図1を参照して本実施形態における通信システム1の構成の概要について説明する。なお、図1は、本実施形態における通信システム1の構成を示すブロック図である。また、図が煩雑になることを防止するために、図1においては、一部のユーザのみを示している。すなわち、実際の通信システム1においては、表示するよりも多数の通信端末装置10が存在している。
本実施形態の通信システム1は、SNSの各機能と連動することが可能なシステムであって、所定の施設や店舗等、ユーザが高い興味を示す場所の特定を通信端末装置10の位置情報に基づいて行うとともに、特定された場所に関する情報に基づいて所定の処理を行うことによって、特定された場所に関する情報を複数のユーザ同士で共有することを可能とする通信システムである。
当該通信システムでは、例えば、一のユーザと他のユーザとの興味度が類似する場合に、一のユーザのみが高い興味を示している場所の情報を他のユーザに提供する処理や、興味度が高い場所のランキングを作成し、ユーザが作成されたランキングデータにアクセス可能にするなどして、情報をユーザ同士で共有することが可能になっている。
そして、通信システム1は、これらの情報に基づいて、現実社会におけるユーザ間の交流、又は、SNSなどの仮想空間における交流を活性化させることができるようになっている。
具体的には、本実施形態の通信システム1は、図1に示すように、各々異なるユーザにより所持される複数の通信端末装置10と、ネットワーク20と、ネットワーク20を介して各通信端末装置10に通信接続される情報提供サーバ装置30と、により構成される。
なお、ネットワーク20は、例えば、携帯電話網を含む公衆電話回線網(以下、「長距離通信ネットワーク」という。)と、IP(Internet Protocol)ネットワークが相互接続されて構成されている。ただし、当該ネットワーク20の構成は、これに限られない。
通信端末装置10は、例えば、パーソナルコンピュータ、タブレット型情報端末装置、スマートフォン、又は、携帯用電話機であり、通信機能及びGPS(Global Positioning System)機能を有し、かつ、ユーザによって携帯可能な通信端末装置10である。そして、通信端末装置10は、情報提供を受けるために、予め定められたユーザ毎に固有の識別情報(以下、「ユーザID」という。)を用いている。
また、この通信端末装置10は、XML(eXtensible Markup Language)等のマークアップ言語によって記述されているWWW(World Wide Web)システム用のリソースデータと、当該リソースデータのネットワークアドレスを示す固有のURL(Uniform Resource Locator)とを用いつつ、情報提供サーバ装置30とのデータ通信を行うブラウジング機能を有している。そして、通信端末装置10は、ブラウジング機能を用いて、情報提供サーバ装置30から受信したXMLデータに基づいて、情報提供サーバ装置30とのデータの授受を行いつつ、情報提供サーバ装置30から提供される種々のデータ通信を行うことができるように構成されている。
また、通信端末装置10は、GPS衛星40から送信された衛星信号(GPS信号)を検出し、通信端末装置10は、検出したGPS信号に基づいて自機の現在位置の座標値(例えば、緯度及び経度)を検出し、予め定められた単位時間毎に当該通信端末装置10の現在位置の座標値を情報提供サーバ装置30に送信することができるように構成されている。
情報提供サーバ装置30は、ネットワーク20に接続されたコンピュータシステムであり、ネットワーク20を介して複数の通信端末装置10と通信接続されるともに、当該接続された各通信端末装置10から情報を収集し、かつ、当該各通信端末装置10に情報を提供するサーバ装置である。
この情報提供サーバ装置30は、通信端末装置10と連動し、当該情報提供サーバ装置30自体が備えるデータベース(以下、「DB」という。)及び、当該情報提供サーバ装置30の外部に設けられたDBを管理制御することによって、DBに予め登録された場所に関する情報と通信端末装置10から送信される現在位置情報とを利用して種々の演算処理を行い、ユーザが高い興味を示す場所の特定を行っている。
情報提供サーバ装置30はデータを処理するための構成を有しており、各種のアプリケーションを実行することにより、各種の機能を実現する。
特に、情報提供サーバ装置30は、
(1)ユーザの移動速度を算出する処理、
(2)各ユーザの平均移動速度を算出する処理、
(3)ユーザ平均移動速度に基づいて、暫定興味度及び興味度を算定しつつ、興味度を算出する処理、
(4)データベースを管理する処理、及び、
(5)興味度に基づく所定の情報の提供などの処理
を実行する構成を有している。
具体的に、情報提供サーバ装置30は、(1)の移動速度を算出するための処理としては、通信端末装置10から送信された、単位時間毎の通信端末装置10が存在する位置の位置情報に基づいて移動速度を算出する。
なお、単位時間は、予め定められており、短時間としては、1分や2分といった数分という時間が採用される。移動速度は、単位時間毎に送信される、時間的に隣接する2時点における位置情報と、単位時間とに基づいて算出される。
また、情報提供サーバ装置30は、(2)の各ユーザの平均移動速度を算出する処理としては、算出された移動速度に基づいて、予め定められた所定時間における移動速度の平均値を算出する。本実施形態において、平均移動速度は、後述する暫定興味度を算出するときの所定の基準速度として用いられる。平均移動速度を算出する際の所定時間は、例えば、6時間、12時間、24時間等、数時間という時間が採用される。
一般に、人は、興味がない場所では速い速度で移動し、興味を有する場所では、遅い速度で移動すると考えられる。本実施形態における情報提供サーバ装置30では、移動速度が平均移動速度よりも遅い場合に、ユーザは、その遅い移動速度で移動している場所に興味を持っているという考え方に基づいている。
なお、ユーザが興味を有する場所を移動する場合、ユーザは歩行で移動していると考えられる。そのため、歩行速度のみを対象として平均移動速度を算出するために、情報提供サーバ装置30は、平均移動速度を算出するための構成が平均移動速度を算出する際、移動速度を算出するための構成により算出された移動速度と、予め定められた上限速度とを比較し、上限速度以下の移動速度のみを用いて平均移動速度を算出する。
そして、この上限速度よりも速く移動する場合、ユーザは、鉄道等の交通手段を利用して移動していると考えられる。上限速度は、上限速度よりも速く移動する場合を除外することを目的としている。
また、情報提供サーバ装置30は、(3)の暫定興味度を算出する処理としては、移動速度と所定の基準速度とに基づいて、所定の基準速度を移動速度で割った、「(所定の基準速度)/(移動速度)」を暫定興味度として算出する。すなわち、移動速度が速ければ、暫定興味度は小さくなり、移動速度が遅ければ、暫定興味度は大きくなる。
本実施形態では、ユーザが所定の場所に興味があるかないかをこの暫定興味度に基づいて判断することが可能になっており、暫定興味度が大きい場合には、ユーザが所定の場所に興味があることの仮の目安とし、暫定興味度が小さい場合には、ユーザが所定の場所に興味がないことの仮の目安とする。
そして、情報提供サーバ装置30は、算出された暫定興味度を補正し、高い精度の興味度を算出する。
すなわち、ユーザの移動速度が遅い場合であっても、ユーザが存在する場所が混雑していて移動速度が遅い場合もある。そこで、情報提供サーバ装置30は、混雑によりユーザの移動速度が遅くなっている場合に補正を行い、真に興味を有する程度を表す興味度を算出している。
例えば、情報提供サーバ装置30は、暫定興味度に補正係数を掛けて興味度を算出する。
なお、所定の補正係数は、0よりも大きく1.0以下の値である。また、所定の補正係数は、ユーザが位置する場所の混雑度に関連づけられた値であり、一のユーザが携帯する通信端末装置10の周囲において、所定の閾値の範囲内(例えば、数メートル以内)に存在する他のユーザが携帯する通信端末装置10の数に対応付けて求められる。
すなわち、所定の補正係数は、所定の閾値の範囲内(例えば、数メートル以内)に存在する他のユーザが携帯する通信端末装置10の数が多いほど小さな値となり、少ないほど、大きな値となる。
他方、情報提供サーバ装置30は、(4)のデータベースを管理する処理としては、算出された興味度を所定のデータベースに登録している。興味度のデータベースへの登録は、時間的に通信端末装置10の現在位置が検出された順に、すべてのユーザを対象にして統一的に登録することと、相対的に興味度が高い場所をユーザ別に登録することの両方の形骸がある。
さらに、情報提供サーバ装置30は、(5)の興味度に基づく所定の情報の提供などの処理としては、算出された興味度に基づいて、
(5A)興味が高い場所のマッピングすること、
(5B)興味が高い場所のランキング等を作成し、ユーザにその情報を提供すること、
(5C)一のユーザと嗜好性が類似する他のユーザの興味が高い場所に関する情報を提供すること、
等を挙げることができる。
[2]通信端末装置
次に、図2を参照して本実施形態の各通信端末装置10の構成について説明する。なお、図2は、本実施形態の通信端末装置10の構成を示す構成図である。
本実施形態の通信端末装置10は、図2に示すように、通信制御部110と、現在位置検出部120と、表示部130と、表示制御部140と、操作部150と、データ処理部160と、ROM/RAM170と、を有している。また、通信端末装置10は、全体を制御する端末管理制御部180を有している。なお、上記の各構成部は、バスBによって相互に接続され、各構成要素間におけるデータの転送が実行される。
通信制御部110は、ネットワーク20に接続される基地局50を介して情報提供サーバ装置30と通信チャネルを構築し、コンテンツデータの共有を行うための種々のデータの授受を行う。特に、本実施形態においては、下記の現在位置検出部120によって検出された、通信端末装置10の現在位置に関する位置情報と、現在位置検出部120が現在位置を検出したときの日時を送信する。
現在位置検出部120は、情報提供アプリの指示の下、予め設定された単位時間毎に通信端末装置10の現在位置を検出しつつ、当該現在位置を示す現在位置情報を生成する。単位時間としては、数分(例えば、1分程度)とする。
現在位置検出部120は、例えば、アプリを立ち上げるタイミングにおいて、図1に示すGPS衛星40の位置を認識しつつ、当該GPS衛星40から送信された衛星信号(GPS信号)を検出する。そして、現在位置検出部120は、検出したGPS信号に基づいて自機の現在位置の座標値(例えば、緯度及び経度)を算出(すなわち、検出)し、当該座標値を現在位置情報として端末管理制御部180に提供する。
なお、通信端末装置10が、電話機能を有している場合には、現在位置検出部120は、長距離無線システムにおいて用いられる、三点測量法、すなわち、基地局から、当該基地局のIDを基に情報提供サーバ装置30へ問合せを行い、問合せの結果得られた当該基地局の位置情報と電波強度に基づいて自機の現在位置を検出してもよい。
通信端末装置10が、現在位置検出部120により検出された現在位置情報を情報提供サーバ装置30に送信するタイミングは、単位時間毎であることには限定されない。例えば、通信端末装置10は、単位時間毎に生成される現在位置情報をメモリに記録しておき、ある一定の時間が経過したときに、一括して現在位置情報を情報提供サーバ装置に送信してもよい。
また、混雑度を算出するにあたって、当該通信システム1では、一のユーザが携帯する通信端末装置10の現在位置及び他のユーザが携帯する通信端末装置10の現在位置を、各通信端末装置10がそれぞれ備えている現在位置検出部120が検出したGPS信号に基づいて行うことには限定されない。例えば、一のユーザが携帯する通信端末装置10がその周囲に存在する他の一のユーザが携帯する通信端末装置10の数と、通信端末装置10同士の距離とを検出し、位置のユーザが携帯する通信端末装置10が、その周囲の通信端末装置10の数及び距離に関する情報を情報提供サーバ装置30に送信するようにしてもよい。
表示部130は、例えば、液晶素子又はEL(Electro Luminescence)素子のパネルによって構成され、表示制御部140において生成された表示データに基づいて所定の画像を表示する。
表示制御部140は、表示部130に表示させるために必要な表示データを生成するようになっており、生成された表示データを当該表示部130に出力する。
操作部150は、各種の確認ボタン、各操作指令を入力する操作ボタン、テンキーなどの多数のキー及びタッチパネルにより構成され、各操作を行う際に用いられるようになっている。
データ報処理部160は、例えば、通信端末装置10の現在位置を含む一定範囲の地図情報を地図情報DBから入手し、当該地図情報を表示部130に表示させる処理や、表示された地図上における現在位置を示す目印を表示部130に表示させる処理等を行っている。
ROM/RAM170には、メモリ機能を有し、通信端末装置10として機能するための各種の制御プログラムが記録されている。また、このROM/RAM170は、現在位置検出/記録制御プログラムが記録されているとともに、各種の処理が実行される際のワークエリアとして用いられる。
端末管理制御部180は、主に中央演算処理装置(CPU)によって構成されるとともに、キー入力ポート、表示制御ポート等の各種入出力ポートを含み、通信端末装置10の全般的な機能を総括的に制御する。
[3]情報提供サーバ装置
次に、図3〜図8の各図を用いて本実施形態の情報提供サーバ装置30の構成について説明する。
なお、図3は、本実施形態の情報提供サーバ装置30の構成を示す構成図である。また、図4は、一実施形態における情報提供サーバ装置30の場所情報管理DB332に記録されるデータの一例を示す図であり、図5は、一実施形態における情報提供サーバ装置30の平均移動速度情報DB333に記録されるデータの一例を示す図であり、図6は、一実施形態における情報提供サーバ装置30の位置情報管理DB334に記録されるデータの一例を示す図である。また、図7は、一実施形態における情報提供サーバ装置30の興味度情報統一DB335に記録されるデータの一例を示す図であり、図8は、一実施形態における情報提供サーバ装置の興味度情報ユーザ別DB336に記録されるデータの一例を示す図である。
本実施形態の情報提供サーバ装置30は、図3に示すように、通信制御部310と、ROM/RAM320と、各種DBを有する記録装置330と、データ処理部340と、情報提供サーバ装置30の各部を統合制御するサーバ管理制御部350と、を有する。上記の各部は、バスBによって相互に接続され、各構成要素間におけるデータの転送が実行される。
サーバ管理制御部350は、主に中央演算処理装置(CPU)によって構成されるとともに、プログラムを実行することによって、通信制御部310の動作管理、記録装置330を構成する各DBの管理及び制御を行う。
ROM/RAM320には、情報提供サーバ装置30の駆動に必要な各種のプログラムが記録されている。そして、ROM/RAM320は、各種の処理が実行される際のワークエリアとして用いられる。
通信制御部310は、所定のネットワークインターフェースであり、通信端末装置10と通信チャネルを構築し、情報提供サービスの提供を実現するために種々のデータの授受を行う。この通信制御部310は、通信端末装置10と連動し、通信端末装置10の位置情報を取得する位置情報取得手段として機能する。そして、通信制御部310は、データ処理部340によって所定の処理がなされた結果を、ネットワーク20を介して通信端末装置10に配信する情報提供手段として機能する。
記録装置330は、HDDにより構成され、その記録領域内にユーザ管理DB331、及び場所情報管理DB332、平均移動速度情報DB333、位置情報管理DB334、興味度情報統一DB335、及び興味度情報ユーザ別DB336が構築される。
ユーザ管理DB331は、各ユーザを管理するための各種情報がデータとして格納されるデータベースである。ユーザ管理DB331は、特に図示していないが、例えば、
(1)各ユーザに対応するユーザIDと、
(2)ユーザIDにより特定されるユーザの性別と、
(3)ユーザIDにより特定されるユーザの年代と、
(4)ユーザIDにより特定されるユーザの居住地と、
が対応付けて登録される。
場所情報管理DB332は、場所タグのマスターテーブルであり、主要な施設や店舗等の場所に関する情報が予め登録されたデータベースである。この場所情報管理DB332は、例えば、図4に示すように、
(1)場所タグIDと、
(2)場所タグIDの対象となる場所が存在する位置情報(経度、緯度)と、
(3)場所タグIDの対象となる場所の名称と、
が関連付けて登録されている。
例えば、図4の第1行目に示す例の場所情報管理DB332では、場所タグID「100001」の場所が、経度(X座標)「157.14441」、緯度(Y座標)「49.33333」、及び場所タグIDの対象となる場所の名称「代々木公園」と関連づけて登録されている。
平均移動速度情報DB333は、各ユーザの平均移動速度の情報がユーザ毎に登録されたデータベースである。平均移動速度は、通信端末装置10の現在位置情報に基づき算出された移動速度の所定時間分の平均値である。例えば、平均移動速度情報DB333は、図5に示すように、
(1)各ユーザに対応するユーザIDと、
(2)ユーザIDにより特定されるユーザの平均移動速度と、
が対応付けて登録される。
図5に示した例の平均移動速度情報DB333では、例えば、ユーザIDが「101」のユーザは、平均移動速度が4.05km/h、ユーザIDが「102」のユーザは、平均移動速度が3.50km/h、ユーザIDが「103」のユーザは、平均移動速度が2.21km/hとしてそれぞれ特定されている。
位置情報管理DB334は、ユーザIDに関連づけられて、ユーザが携帯する通信端末装置10から単位時間毎に送信される現在位置情報と、通信端末装置10が前回検出された位置からの移動距離と、周囲に存在する通信端末装置10の数が登録されるデータベースである。
位置情報管理DB334、例えば、図6に示すように、
(1)ユーザIDと、
(2)ユーザが携帯する通信端末装置の現在位置情報(経度と緯度)と、
(3)通信端末装置10が前回検出された位置からの移動距離と、
(4)一の通信端末装置10が検出された位置の周囲に存在する他の通信端末装置10の数と、
が関連付けて記録される。
例えば、図6に示す例の位置情報管理DB334では、第1行目に登録されたユーザID「101」のユーザについては、現在位置情報が経度(X座標)「157.14441」、緯度(Y座標)「49.33333」、通信端末装置10の前回検出された位置からの移動距離が「0.19km」、通信端末装置10の周囲に存在する他の通信端末装置10の数が「1」である。
なお、図6に示した例の位置情報管理DB334では、情報提供サーバ装置30が受信した順番に上記の情報を順番に登録している。すなわち、図6に示した位置情報管理DB334では、ユーザIDが「101」のユーザ、ユーザIDが「102」のユーザ、ユーザIDが「101」のユーザの順番に各ユーザが携帯する通信端末装置10からの情報を受信し、その順番に情報が登録されている。
興味度情報統一DB335は、興味度に閾値を予め設定し、当該閾値以上の値を示す、興味度が高い場所を履歴として登録しておくためのデータベースである。この興味度情報統一DB335には、1つのデータベースにすべてのユーザの興味度が高い場所が登録されている。
興味度情報統一DB335は、例えば、図7に示すように、
(1)ユーザIDと、
(2)ユーザが携帯する通信端末装置の現在位置情報(経度と緯度)と、
(3)(2)の現在位置情報により特定される場所の興味度と、
(4)(2)の現在位置情報により特定される場所の場所タグIDと、
(5)(2)の現在位置情報により特定される場所に通信端末装置10が存在していた年月日及び時刻と、
が関連付けて記録される。
例えば、図7に示した例の興味度情報統一DB335では、第1行目に登録されているユーザID「101」のユーザについては、現在位置情報が経度(X座標)「157.14441」、緯度(Y座標)「49.33333」に位置する場所について、「5.20」の興味度を有していることが示されている。なお、現在位置情報が経度(X座標)「157.14441」、緯度(Y座標)「49.33333」に位置する場所の場所タグIDは、「100001」であることを示している。また、ユーザID「101」のユーザが携帯する通信端末装置10が、経度(X座標)「157.14441」、緯度(Y座標)「49.33333」に位置する場所に存在したのは、「2015/03/02 13:10:10」、すなわち、2015年3月2日の13時10分10秒であることが登録されている。
興味度情報ユーザ別DB336は、興味度に閾値を予め設定し、当該閾値以上の値を示す、興味度が高い場所を履歴として登録しておくためのデータベースである。この興味度情報ユーザ別DB336には、情報がユーザ別に格納されている。
興味度情報ユーザ別DB336は、例えば、図8(A)から図8(C)に示すように、
(1)ユーザIDと、
(2)所定の場所の興味度と、
(3)(2)で特定された興味度の対象となる場所の場所タグIDと、
(4)(2)で特定された興味度の対象となる場所の位置情報(経度、緯度)と、
が対応付けて記録される。
例えば、図8(A)に示した例の興味度情報ユーザ別DB336には、ユーザID「101」に関する情報が登録されている。第1行目に登録されている具体的な情報は、興味度「5.40」、場所タグID「100001」、経度(X座標)「157.14441」、緯度(Y座標)「49.33333」が関連づけて登録されている。
また、図8(B)に示した例の興味度情報ユーザ別DB336には、ユーザID「102」に関する情報が登録されている。第1行目に登録されている具体的な情報は、興味度「4.19」、場所タグID「100004」、経度(X座標)「157.14414」、緯度(Y座標)「49.33332」が関連づけて登録されている。
同様に、図8(C)に示した例の興味度情報ユーザ別DB336には、ユーザID「103」に関する情報が登録されている。第1行目に登録されている具体的な情報は、興味度「4.55」、場所タグID「100001」、経度(X座標)「157.14441」、緯度(Y座標)「49.33333」が関連づけて登録されている。
この図8に示した興味度情報ユーザ別DB336に登録されたデータは、後に説明するデータ処理部340で実行される所定の処理を行う場合に用いられる。
データ処理部340は、各種のアプリケーションを実行することにより、各種の機能を実現する。具体的には、データ処理部340は、DB管理部341、移動速度算出部342、平均移動速度算出部343、暫定興味度算出部344、興味度算出部345及び所定処理実行部346を少なくとも含む。
DB管理部341は、通信制御部310を介して情報を取得したり、情報提供サーバ装置30に直接入力されたり、データ処理部340で処理した結果を、記録装置330が備える各データベースにそれぞれ登録する。
なお、例えば、DB管理部341は、本発明におけるユーザ管理DB管理手段、場所情報管理手段及び興味度情報登録手段を構成する。
移動速度算出部342は、本発明の移動速度算出手段を構成している。移動速度算出部342は、通信端末装置10から送信された、予め定められた単位時間毎の通信端末装置10が存在する位置の位置情報であって、時間的に隣接する2時点における位置情報と、単位時間とに基づいて算出する。
単位時間は、上述したように、1分や2分といった数分程度の時間が採用される。
平均移動速度算出部343は、本発明の平均移動速度算出手段を構成している。平均移動速度算出部343は、移動速度算出部342によって算出された移動速度に基づいて、予め定められた所定時間の平均値を算出する。例えば、平均移動速度は、移動速度算出部342により算出された移動速度のうち上限速度以下の移動速度を所定時間の分だけ足し合わせ、足し合わされた値を、上限速度以下における所定時間内の移動速度の個数で除すことによって算出する。この平均移動速度算出部343により算出される平均移動速度は、後述する暫定興味度を算出するときの所定の基準速度として用いられる。なお、詳細は後述する。
平均移動速度を算出する際の所定時間は、例えば、6時間、12時間、24時間等の数時間という時間が採用される。
暫定興味度算出部344は、本発明の暫定興味度算出手段を構成する。暫定興味度算出部344は、移動速度算出部342により算出された移動速度と、所定の基準速度とに基づいて、通信端末装置10が存在する位置における暫定興味度を算定する。
所定の基準値は、ユーザが興味を示さずに、一定の速さ以上で移動している場合における基準となる移動速度である。ユーザが歩行によって移動する速度は、ユーザ毎に異なると考えられるので、この所定の基準値は、ユーザ毎に設定される。本実施形態では、所定の基準値として、平均移動速度算出部343により算出された平均移動速度が用いられている。
この暫定興味度は、例えば、次の(式1)により算出する。
なお、(式1)において、PIは暫定興味度、Vは、時間的に隣接する2時点における位置情報と単位時間とに基づいて、移動速度算出部342が算出した移動速度、Vaは、移動速度に基づいて、平均移動速度算出部343が予め定められた所定時間の平均値を算出した平均移動速度をそれぞれ表している。
興味度算出部345は、本発明の興味度算出手段を構成する。興味度算出部345は、暫定興味度算出部344により算出された暫定興味度を補正し、高い精度の興味度を算出する。
すなわち、ユーザの移動速度が遅い場合であっても、ユーザが存在する場所が混雑していて移動速度が遅い場合もある。興味度算出部345は、混雑によりユーザの移動速度が遅くなっている場合に補正を行い、真に興味を有する程度を表す興味度を算出している。
興味度算出部345は、具体的に、暫定興味度算出部344により算出された暫定興味度に所定の補正係数を掛けることによって、興味度を算出する。所定の補正係数は、0よりも大きく1.0以下の値である。
例えば、所定の補正係数は、一のユーザが携帯する通信端末装置10の周囲において、所定の閾値の範囲内(例えば、数メートル以内)に存在する他のユーザが携帯する通信端末装置10の数に基づいて求める。具体的には、他のユーザが携帯する通信端末装置10の数の逆数が所定の補正係数として用いられる。
ただし、所定の補正係数は、例えば、他のユーザが携帯する通信端末装置10の数が0〜5の場合にはk1、5〜10の場合にはk2というようなテーブルを設けておき、他のユーザが携帯する通信端末装置10の数に対応する値を選択するようにしてもよい。
興味度は、次の(式2)に基づいて算出する。
なお、(式2)において、Iは興味度、kは所定の補正係数、PIは暫定興味度をそれぞれ表している。
(式2)により算出された興味度は、予め定められた閾値と比較され、閾値よりも高い興味度については、図7に示すように、高い興味度の経度(X座標)、緯度(Y座標)、その場所の場所タグID及びその場所にユーザが立ち寄った年月日と時間とともに、興味度情報統一DB335に登録される。
高い興味度を示す場所の特定は、通信端末装置10から送信された現在位置情報と場所情報管理DB332に登録された場所情報とを対比し、両者が一致する場所の場所タグIDを選択することによって行う。
所定処理実行部346は、興味度算出部345により算出された興味度に基づいて、種々のデータ処理を実行する。特に、所定処理実行部346は、ユーザに提供するための推薦情報を算出された興味度に基づいて生成する。
この所定処理実行部346により実行される処理としては、例えば、
(1)興味が高い場所の位置を推薦情報して生成するために、興味が高い場所を地図情報上にマッピングしてユーザに提供すること、
(2)興味が高い場所のランキング等を作成し、作成されたランキングを推薦情報としてユーザに提供すること、
(3)一のユーザと嗜好性が類似する他のユーザの興味が高い場所に関する情報を推薦情報として生成し、当該推薦情報をユーザに提供すること、
等を挙げることができる。
通信制御部310は、所定処理実行部346により生成された情報を通信端末装置10に送信する。
[4]興味度を算出する処理の考え方と具体的な処理について
本実施形態の情報提供サーバ装置30が備えるデータ処理部340が実行する処理内容のうち、最も重要な処理は、暫定興味度の算出及び興味度の算出である。暫定興味度を算出する処理及び興味度を算出する処理について、以下詳細に説明する。
[4.1]暫定興味度及び暫定興味度算出の処理について
上述したように、ユーザが高い興味を示す場所の特定は、通信端末装置10から単位時間毎に送信される位置情報に基づいて、情報提供サーバ装置30が当該通信端末装置10を携帯するユーザの移動速度を算出し、算出された移動速度に基づき行う。
一般に、ユーザは、興味がある場所では、その場所に停滞しているか又は遅い速度で移動すると考えられ、興味がない場所では、速い速度で移動すると考えられる。本実施形態における情報提供サーバ装置30では、移動速度が所定の基準速度よりも遅い場合に、ユーザは、その遅い移動速度で移動している場所に興味を持っているという考え方に基づいている。
もっとも、ユーザが移動する速度は、ユーザ毎に異なる。そのため、所定の基準速度は、ユーザ毎に定めることが好ましい。本実施形態では、ユーザ毎に所定の基準速度を設定するために、所定の基準速度として、各ユーザの平均移動速度を採用している。
なお、ユーザが興味を有する場所を移動する場合、ユーザは歩行で移動していると考えられる。一般に、歩行の平均速度は、時速4kmから時速6kmの間であるといわれている。この速度よりも速く移動している場合には、ユーザは、歩行ではなく、鉄道等の移動手段により移動していると考えられる。歩行以外の移動手段で移動していると考えられる速度を、ユーザの興味度を算出するときの基準に含めることは適切ではない。
そのため、本実施形態では、歩行速度のみを対象として平均移動速度を算出するために、平均移動速度を算出する際、歩行以外の移動手段で移動している場合を除外している。
具体的に、移動速度算出部342で算出された移動速度と、予め定められた所定の上限速度とを比較し、所定の上限速度以下の移動速度のみを用いて平均移動速度を算出する。所定の上限速度は、人の歩行速度のばらつきを考慮して、例えば、時速6kmに設定する。
暫定興味度は、上記の考え方の下に、(式1)に基づいて算出される。
次に、図9を利用して、通信端末装置10から送信される現在位置情報に基づいて暫定興味度を算出するまでの処理の具体的な内容について説明する。なお、図9は、移動速度及び暫定興味度を説明するための説明図であり、当該図9において、点線で示した円は、一つの施設を表すこととする。
図9において、通信端末装置10を携帯するユーザがポイントP1にいると想定する。ユーザがポイントP1にいるときの時刻をT1とする。また、通信端末装置10は、現在位置情報を単位時間t毎に情報提供サーバ装置30に送信すると想定する。第1のケースでは、ユーザは、時刻T1の時点から単位時間tが経過した時刻T2のときに、ポイントP1から距離がL1だけ離れたP2の位置に移動し、第2のケースでは、ユーザは、時刻T1の時点から単位時間tが経過した時刻T2のときに、ポイントP1から距離がL2だけ離れたポイントP3の位置に移動したと想定する。
第1のケースでは、ユーザは、時刻T1のときに、ポイントP1に位置し、単位時間tが経過した時刻T2のときに、ポイントP2の位置に移動している。
情報提供サーバ装置30は、ユーザが携帯する通信端末装置10から現在位置情報が送信され、ポイントP2の位置に対応する経度(X座標)及び緯度(Y座標)が、図6に示すように、位置情報管理DB334に登録される。その際、ポイントP1からポイントP2まで移動した移動距離L1及びポイントP2における、一のユーザの周囲に存在する他のユーザの通信端末装置10の数が関連づけて登録される。
ユーザの移動速度は、次の(式3)で表すことができる。
なお、(式3)において、ユーザのVは移動速度、ユーザのLは移動距離、tは単位時間をそれぞれ表している。
第1のケースでは、通信端末装置10を携帯するユーザの移動距離がL1であり、移動速度は、(式3)のLにL1を代入することによって算出される。
第1のケースおいて、ユーザは、時刻T1の時点と時刻T2との間に、L1だけしか移動しておらず、同じ施設内に存在している。そのため、第1のケースでは、ユーザは、当該施設に高い興味度を暫定的に持っていると推定することができる。この場合、ユーザの暫定興味度は、(式1)に基づいて算出すると、次の(式4)のように算出することができる。
第2のケースでは、ユーザは、時刻T1のときに、ポイントP1に位置し、単位時間tが経過した時刻T2のときに、ポイントP1から距離がL2だけ離れたポイントP3に移動している。この第2のケースの場合についても、情報提供サーバ装置30は、ユーザが携帯する通信端末装置10から現在位置情報が送信され、ポイントP3の位置に対応する経度(X座標)及び緯度(Y座標)が、図6に示すように、位置情報管理DB334に登録される。その際、ポイントP1からポイントP3まで移動した移動距離L2及びポイントP2における、一のユーザの周囲に存在する他のユーザの通信端末装置10の数が関連づけて登録される。
第2のケースでは、通信端末装置10を携帯するユーザの移動距離がL2であり、移動速度は、(式3)のLにL2を代入することによって算出される。
第2のケースおいて、ユーザは、時刻T1の時点と時刻T2の時点との間に、L2の距離を移動しており、時刻T2の時点でユーザの位置は、時刻T1の時点でユーザが位置していた施設とは異なることなる。そのため、第2のケースでは、ユーザは、当該施設には興味を持っていないと推定することができる。この場合、ユーザの暫定興味度は、(式1)に基づいて算出すると、次の(式5)のように算出することができる。
暫定興味度は、数値が大きいほど興味が高い。したがって、第1のケースと第2のケースとでは、第1のケースの方が暫定興味度は大きな数値となる。
[4.2]興味度及び興味度算出の処理について
上記のように、ユーザの移動速度が遅い場合、ユーザはその場所に興味を有していると考えることができる。ただし、ユーザの移動速度が遅い場合であっても、ユーザが存在する場所が混雑していて移動速度が遅い場合もある。情報提供サーバ装置30は、混雑によりユーザの移動速度が遅くなっている場合に補正を行い、真に興味を有する程度を表す興味度を算出している。
具体的に、情報提供サーバ装置30は、位置のユーザが携帯する通信端末装置10から送信される現在位置情報に加え、他のユーザが携帯する通信端末装置10から送信される現在位置情報を取得し、一のユーザが携帯する通信端末装置10の近傍に、他のユーザが携帯する通信端末装置10が存在するか否かを検出している。そして、一のユーザが携帯する通信端末装置10の近傍に、他のユーザが携帯する通信端末装置10が存在すると判定した場合には、暫定興味度に所定の補正係数を掛けて、高い精度の興味度を算出している。
(式2)の補正係数kは、例えば、予め設定された閾値の範囲内に存在する他のユーザが携帯する通信端末装置10の数の逆数が採用される。他のユーザが携帯する通信端末装置10の数の逆数が補正係数として用いられた場合、他のユーザが携帯する通信端末装置10の数が多くなるにしたがって、補正係数は小さくなる。そのため、一のユーザが位置する場所の混雑が激しい場合では、より小さな値の補正係数が暫定興味度に掛けられるため、興味度は小さくなる。したがって、他のユーザが携帯する通信端末装置10の数の逆数を補正係数として用いることは、一のユーザが存在する位置の混雑の程度を興味度に適切に反映させることができる。
次に、図9及び図10を利用して、暫定興味度から興味度を算出するまでの処理の具体的な内容について説明する。なお、図10は、暫定興味度から興味度を説明するための説明図であり、当該図10において、一点差鎖線は、閾値を概念的に表している。また、ユーザの平均移動速度は、Vaであったとする。
(式1)により算出された暫定興味度が高い場合でも、図10に示すように、ユーザが混雑している場所に位置している場合、暫定興味度が高く算出されたとしても、その場所は、ユーザが興味を持つ場所とはいえない。上記の第1のケースにおいて、暫定興味度を補正し、高い精度の興味度を算出する。
図10に示す例の場合、一のユーザU1の周囲には、所定の閾値の範囲内に複数の他のユーザUnが存在している。なお、所定の閾値の範囲内に存在する他のユーザUnは、他のユーザUnが携帯する通信端末装置10から送信される現在位置情報に基づいて検出する。
一のユーザU1の周囲に複数の他のユーザUnが存在する場合、一のユーザU1は、他のユーザUnによって移動が妨げられるので、移動速度が遅くなる。そして、一のユーザU1の周囲に存在する他のユーザUnが多い程一のユーザU1の移動は妨げられ、移動速度は遅くなる。
補正係数は、所定の閾値の範囲内に存在する他のユーザUnの数が多くなるにしたがって、数値が小さくなる。例えば、補正係数は、所定の閾値の範囲内に存在する他のユーザUnの数の逆数が採用される。図10に示す例では、一のユーザU1の周囲には所定の閾値の範囲内に他のユーザUnが9人存在しているので、補正係数は1/9となる。
興味度は、(式1)で算出された暫定興味度に1/9を掛けて算出される。
なお、一のユーザの周囲に他のユーザが存在しない場合、補正係数として1を採用し、(式4)で算出された暫定興味度に1を掛けて興味度は算出される。
以上のように、当該通信システムでは、ユーザが所定の施設に興味があって遅い速度で移動しているのか、それとも、混雑によりユーザの移動が妨げられているのかを判断することができるように、暫定興味度に補正係数を掛けることによって高い精度の興味度を算出している。そのため、当該通信システムは、高い精度で興味度を算出することができる。
算出された興味度は、予め設定された閾値と比較し、閾値よりも高い興味度の場所が抽出される。抽出された場所は、図4に示した場所情報DBと対比され、抽出した場所の特定が行われる。
なお、興味度の高い場所を抽出する手法は、算出された興味度と予め設定された閾値とを比較することには限定されず、算出された興味度同士を比較し、算出された興味度の中から相対的に高い値の興味度を選択し、その興味度を示す場所を抽出するようにしてもよい。
抽出された場所に関する情報は、図7に示すように、情報提供サーバ装置30に位置情報が送信された順番に、ユーザIDに関連づけて、興味度が高い場所の経度(X座標)、緯度(Y座標)、興味度、場所タグID及び年月日と時刻が、興味度情報統一DB335に登録される。
また、抽出された場所に関する情報は、図8に示すように、ユーザ毎に、興味度、場所タグID、その場所の経度(X座標)、及び緯度(Y座標)が相互に関連づけて、興味度情報ユーザ別DB336に登録される。
[5]所定処理実行部が実行する処理内容
所定処理実行部346は、図8に示す興味度情報ユーザ別DB336に登録された情報に基づいて、種々の処理を行う。
[5.1]マッピング処理
所定処理実行部346は、例えば、地図情報に対して、ユーザが高い興味を示す場所に目印を付すなどのマッピングを行う。マッピングされた地図情報は、各ユーザがアクセスすることができる処理を行う。
[5.2]ランキング処理
所定処理実行部346は、例えば、図8に示す興味度情報ユーザ別DB336に登録された情報に基づいて、興味度の高い場所を、興味度の高い順にランキングを行う。ランキングされた情報は、各ユーザに配信したり、所定のDBに登録をして各ユーザがそのDBにアクセスできるようにしたりして、ユーザが情報を共有することができるようにする。
[5.3]類似度算出処理
所定処理実行部346は、例えば、図8に示す興味度情報ユーザ別DB336に登録された情報に基づいて、各ユーザの嗜好性を数値化し、数値化された嗜好性に基づいて、ユーザ同士の嗜好性の類似度を算出する。そして、他のユーザと嗜好性が近い一のユーザに対し、他のユーザの情報を提供する。例えば、他のユーザと嗜好性が近い一のユーザに対し、一のユーザが未だ訪れておらず、他のユーザだけが訪れている場所の情報を提供する。
なお、ユーザ同士の嗜好性の類似度の算出は、特に限定がなく、種々の類似度を用いることができる。例えば、類似度としては、コサイン類似度を用いることができる。
コサイン類似度を用いてユーザ同士の嗜好性の類似度を算出する場合、(式6)に示すように、一のユーザと他のユーザとの共通要素数を求め、その値を、一のユーザの要素数の平方根で算出された値と他のユーザの要素数の平方根で算出された値との積で除すことにより求める。
例えば、図8に示す興味度情報ユーザ別DB336において、図8(A)に示したユーザIDが101のユーザと図8(B)に示したユーザIDが102のユーザについて類似度を算出すると次のようになる。
ユーザIDが101のユーザとユーザIDが102のユーザとに共通する場所タグIDを有する要素の数は1である。ユーザIDが101のユーザの要素の数は4であり、ユーザIDが102のユーザの要素の数は3である。これらの数値を(式6)に代入してコサイン類似度を求めると、コサイン類似度の値は、0.2886となる。
一方、図8(A)に示したユーザIDが101のユーザと図8(C)に示したユーザIDが103のユーザについて類似度を算出すると次のようになる。
ユーザIDが101のユーザとユーザIDが103のユーザとに共通する場所タグIDを有する要素の数は3である。ユーザIDが101のユーザの要素の数は4であり、ユーザIDが102のユーザの要素の数は4である。これらの数値を(式6)に代入してコサイン類似度を求めると、コサイン類似度の値は、0.75となる。
この場合、ユーザIDが101のユーザとユーザIDが103のユーザとの間の類似度は、ユーザIDが101のユーザとユーザIDが102のユーザとの間の類似度よりも高いと判定する。
そして、情報提供サーバ装置30は、ユーザIDが101のユーザに対し、ユーザIDが103のユーザのみが訪れ、ユーザIDが101のユーザが訪れていない場所の情報を提供する。
この場合の例では、ユーザIDが101のユーザとユーザIDが103のユーザとは、場所タグIDが「100001」の「代々木公園」、場所タグIDが「100002」の「NHKホール」、及び場所タグIDが「100003」の「上野動物園」をともに訪れている。一方、ユーザIDが101のユーザのみが訪れている場所として、場所タグIDが「100004」の「竹下通り(○○○店)」があり、ユーザIDが103のユーザのみが訪れている場所として、場所タグIDが「100006」の「東京スカイツリー」がある。
したがって、この場合の例では、情報提供サーバ装置30は、ユーザIDが101のユーザに対し、場所タグIDが「100006」の「東京スカイツリー」に関する情報を提供し、ユーザIDが103のユーザに対し、場所タグIDが「100004」の「竹下通り(○○○店)」に関する情報を提供する。
[6]情報提供サーバ装置の動作
次に、図11を参照しながら本実施形態において、通信端末装置10と連動しつつ作動する情報を通信端末装置10に提供する情報提供サーバ装置30の処理について説明する。なお、図11は、本実施形態の情報提供サーバ装置30において実行される処理を示すフローチャートである。
まず、情報提供サーバ装置30は、通信制御部310を介して、通信端末装置10にてアプリが起動したことを検出すると(S101)、上限速度の設定処理を実行する(S102)。上限速度は、平均的な歩行速度より若干速い速度、例えば、時速6km程度が採用される。
次いで、情報提供サーバ装置30は、通信端末装置10の現在位置を検出する時間の間隔である単位時間の設定処理を実行する(S103)。単位時間は、1分や2分といった数分程度の時間が採用される。
次いで、情報提供サーバ装置30は、通信制御部310を介して通信端末装置10の現在位置情報を読み込む(S104)。読み込む現在位置情報は、通信端末装置10が存在する経度(X座標)と緯度(Y座標)とにより特定される。なお、読み込まれた現在位置情報は、図6に示したように、前回検出した現在位置からの移動距離及び通信端末装置の周囲に存在する他のユーザが携帯する通信端末装置10の数と関連づけて、位置情報管理DB334に登録される。
次いで、情報提供サーバ装置30は、通信端末装置10から送信された通信端末装置10を携帯するユーザの平均移動速度が登録されているかどうかの判定を行う(S105)。具体的に、情報提供サーバ装置30は、通信端末装置10を携帯するユーザのユーザIDに基づき、平均移動速度情報DB333を検索し、そのユーザの平均移動速度が登録されているかどうかを判定する。
平均移動速度が未登録であると判定した場合、情報提供サーバ装置30は、送信された通信端末装置10の現在位置情報に基づいて平均移動速度を算出する(S106)。具体的に、情報提供サーバ装置30は、時間的に隣接する2時点の現在位置情報と単位時間とを用いて算出された移動速度の所定時間における平均値を算出する。所定時間は、例えば6時間、12時間又は24時間といった数時間程度とする。
次いで、情報提供サーバ装置30は、算出された平均移動速度を平均移動速度情報DB333にユーザIDに関連づけて登録する(S107)。
平均移動速度が登録済みであると判定した場合、情報提供サーバ装置30は、暫定興味度を算出する(S108)。暫定興味度は、(式1)に基づいて平均移動速度を移動速度で除して算出する。平均移動速度は、平均移動速度情報DB333に登録された情報が用いられ、移動速度は、位置情報管理DB334に登録された位置情報に基づいて算出される。
次いで、情報提供サーバ装置30は、興味度を算出する(S109)。興味度は、(式2)に基づいて、暫定興味度に所定の補正係数を掛けることにより算出する。所定の補正係数は、通信端末装置10の周囲に存在する他のユーザが携帯する通信端末装置10の数に応じて設定される数値であり、例えば、他のユーザが携帯する通信端末装置10の数の逆数等が用いられる。
次いで、情報提供サーバ装置30は、算出された興味度を、図7に示すように、通信端末装置10の現在位置が検出された時間の順番に、ユーザIDに関連づけて通信端末装置10が存在する経度(X座標)、緯度(Y座標)、場所タグID及び日時とともに、興味度情報統一DB335に登録する(S110)。また、情報提供サーバ装置30は、相対的に高い興味度の場所については、図8に示すように、ユーザ毎に、興味度、場所タグID、その場所の場所情報(経度(X座標)、緯度(Y座標))とともに、興味度情報ユーザ別DB336に登録する(S110)。
次いで、情報提供サーバ装置30は、必要に応じて、所定の処理を実行する(S111)。所定の処理は、例えば、高い興味度の場所のマッピング処理、高い興味度の場所のランキング作成処理、ユーザ同士の高い興味度を示す場所の類似度の算出処理等である。所定の処理を実行してえられた情報は、ユーザがアクセスすることができるようにしたり、ユーザからの要求に応じて配信したりする。
[7]変形例
[7.1]変形例1
上記の実施形態では、情報提供サーバ装置が各種のデータベースを備えているが、各種データベースと情報提供サーバ装置を別個に設け、情報提供サーバ装置がデータベースの動作を制御するように構成してもよい。
[7.2]変形例2
当該通信システムは、展示会等のイベントに適用することもできる。例えば、展示会の主催者が推薦するブースに関する情報を展示会の来場者に提供する場合に適用する。その場合、通信端末装置としては、来場者が携帯する各自の通信端末装置を利用する場合だけでなく、展示会の主催者が来場者に通信端末装置10を配布することにより、通信システムを運用することもできる。
当該通信システムを展示会等のイベントに適用する場合、通信端末装置10の位置の特定は、展示会等のイベントが開催される施設に設置された手段で行う。