(57)【要約】      （修正有）【課題】位置情報を効率的に活用する生成装置、生成方法及び生成プログラムを提供する。【解決手段】生成装置は、取得部と、抽出部と、生成部とを備える。取得部は、ユーザの位置情報を取得する。抽出部は、取得部によって取得された位置情報に関連する要素のうち、ユーザに対応付ける要素を抽出する。生成部は、抽出部によって抽出された要素とユーザとを対応付けたデータベースを生成する。例えば、抽出部は、要素として、位置情報に対応する所定の領域を抽出する。【選択図】図５
2019128611.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの位置情報を取得する取得部と、
前記取得部によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出部と、
前記抽出部によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成部と、
を備えたことを特徴とする生成装置。
【請求項２】
前記抽出部は、
前記要素として、前記位置情報に対応する所定の領域を抽出し、
前記生成部は、
前記抽出部によって抽出された所定の領域と前記ユーザとを対応付けたデータベースを生成する、
ことを特徴とする請求項１に記載の生成装置。
【請求項３】
前記取得部は、
複数のユーザの位置情報を取得し、
前記抽出部は、
前記複数のユーザの位置情報の関係性に基づいて前記所定の領域を抽出する、
ことを特徴とする請求項２に記載の生成装置。
【請求項４】
前記抽出部は、
前記複数のユーザの位置情報に基づいてユーザ間の距離を算出し、算出した距離に基づいて前記所定の領域を抽出する、
ことを特徴とする請求項３に記載の生成装置。
【請求項５】
前記取得部は、
前記位置情報に対応する地図情報を取得し、
前記抽出部は、
前記複数のユーザの位置情報の関係性と前記地図情報における地形情報とに基づいて、前記所定の領域を抽出する、
ことを特徴とする請求項３又は４に記載の生成装置。
【請求項６】
前記取得部は、
前記位置情報に対応する地図情報を取得し、
前記抽出部は、
前記所定の領域として、前記地図情報において予め定義された領域である既存領域を抽出し、
前記生成部は、
前記抽出部によって抽出された既存領域と前記ユーザとを対応付けたデータベースを生成する、
ことを特徴とする請求項２に記載の生成装置。
【請求項７】
前記取得部は、
前記ユーザの興味関心を示す情報である興味関心情報を取得し、
前記抽出部は、
前記要素として前記興味関心情報を抽出し、
前記生成部は、
前記抽出部によって抽出された興味関心情報と前記ユーザとを対応付けたデータベースを生成する、
ことを特徴とする請求項１〜６のいずれか一つに記載の生成装置。
【請求項８】
前記取得部は、
前記要素に関する指定情報を取得し、
前記抽出部は、
前記取得部によって取得された指定情報に基づいて前記要素を抽出する、
ことを特徴とする請求項１〜７のいずれか一つに記載の生成装置。
【請求項９】
コンピュータが実行する生成方法であって、
ユーザの位置情報を取得する取得工程と、
前記取得工程によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出工程と、
前記抽出工程によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成工程と、
を含んだことを特徴とする生成方法。
【請求項１０】
ユーザの位置情報を取得する取得手順と、
前記取得手順によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出手順と、
前記抽出手順によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成手順と、
をコンピュータに実行させることを特徴とする生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生成装置、生成方法及び生成プログラムに関する。
【背景技術】
【０００２】
従来、ユーザが所有する端末装置から位置情報を取得し、取得した位置情報に基づいて各種情報処理を行う技術が提案されている。
【０００３】
例えば、端末装置の位置を測位した情報と、広告等のコンテンツに含まれる位置に関する情報との双方に基づいて、端末装置を利用するユーザの関心度を判定する技術が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５２２１４２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術では、位置情報を効率的に活用することができるとは限らない。具体的には、従来技術では、個々のユーザの関心度を判定するに過ぎず、例えばある領域に属するユーザ群がどのような関心を有する傾向にあるかなど、位置情報を用いた様々な分析を効率よく行うことができるとは限らない。
【０００６】
本願は、上記に鑑みてなされたものであって、位置情報を効率的に活用することができる生成装置、生成方法及び生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願に係る生成装置は、ユーザの位置情報を取得する取得部と、前記取得部によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出部と、前記抽出部によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成部と、を備えたことを特徴とする。
【発明の効果】
【０００８】
実施形態の一態様によれば、位置情報を効率的に活用することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態に係る生成処理の一例を示す図である。
【図２】図２は、実施形態に係る抽出処理を説明するための図である。
【図３】図３は、実施形態に係る生成システムの構成例を示す図である。
【図４】図４は、実施形態に係るユーザ端末の構成例を示す図である。
【図５】図５は、実施形態に係る生成装置の構成例を示す図である。
【図６】図６は、実施形態に係るユーザ情報記憶部の一例を示す図である。
【図７】図７は、実施形態に係る位置情報記憶部の一例を示す図である。
【図８】図８は、実施形態に係るエリア定義記憶部の一例を示す図である。
【図９】図９は、実施形態に係るエリア情報記憶部の一例を示す図である。
【図１０】図１０は、実施形態に係る処理手順を示すフローチャートである。
【図１１】図１１は、生成装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【００１０】
以下に、本願に係る生成装置、生成方法及び生成プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る生成装置、生成方法及び生成プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【００１１】
〔１．実施形態に係る生成処理の一例〕
まず、図１及び図２を用いて、実施形態に係る生成処理の一例について説明する。図１は、実施形態に係る生成処理の一例を示す図である。図１では、生成装置１００が、ユーザから取得した位置情報に関連する要素のうちユーザに対応付ける要素を抽出し、抽出した要素とユーザとを対応付けたデータベースを生成する処理を行う一例を示す。
【００１２】
図１に示す生成装置１００は、実施形態に係る生成処理を実行する情報処理装置であり、例えば、ユーザが利用する端末と相互に通信を行うサーバ装置である。
【００１３】
図１に示すユーザ端末１０１、１０２及び１０３は、スマートフォン等の情報処理端末である。実施形態では、ユーザ端末１０１はユーザＵ０１によって利用され、ユーザ端末１０２はユーザＵ０２によって利用され、ユーザ端末１０３はユーザＵ０３によって利用される。以下では、ユーザ端末１０１、１０２及び１０３等を区別する必要のないときは、「ユーザ端末１０」と総称する。また、ユーザＵ０１、Ｕ０２及びＵ０３等を区別する必要のないときは、「ユーザ」と総称する。なお、以下では、ユーザ端末１０をユーザと読み替える場合がある。例えば、「ユーザが位置情報を送信する」とは、実際には、「ユーザが利用するユーザ端末１０が位置情報を送信する」ことを意味する場合がある。
【００１４】
ユーザ端末１０は、例えばＧＰＳ（Global  Positioning  System）等を利用して、自装置が所在する位置（例えば経度や緯度の数値等）を示す情報である位置情報を検知する。なお、位置情報は、位置を示す情報のみならず、その位置が検知された時間を含んでもよい。そして、ユーザ端末１０は、例えば生成装置１００の要求に従い、検知した位置情報を生成装置１００に送信する。具体的には、ユーザ端末１０は、生成装置１００がユーザに提供するサービスであって、位置情報を利用するサービス（天気情報サービスや情報発信サービス等）の提供を受けるために、定期的かつ継続的に位置情報を生成装置１００に送信する。ユーザ端末１０から送信される位置情報は、生成装置１００が有する記憶部に蓄積され、種々の情報処理に利用される。なお、生成装置１００は、ユーザ端末１０から送信される位置情報を自身で利用するのではなく、所定のサービスの提供者（サービスを提供するウェブサーバ等）に提供してもよい。
【００１５】
ここで、位置情報等のいわゆるビッグデータは、ＲＤＢ（Relational  Database、関係データベース）やＫＶＳ（Key-Value  Store、キーバリューストア）のような方式により保持される。一般に、位置情報のように定期的かつ継続的に取得される情報は、情報量が膨大になることもあり、ＫＶＳ方式を利用した分散処理型のデータベースに蓄積される。ＫＶＳ方式では、一定の標識（キー）を指定してデータの読出し処理を行うため、情報利用者が柔軟に条件を指定してデータを活用することができるとは言い難い。例えば、位置情報の利用者は、「ユーザごとの位置情報を知りたい」とか、「場所ごとにどのくらいのユーザが所在するかを知りたい」など、情報処理に関する種々のニーズを有する。上記の分散処理型のデータベースでは、このような種々のニーズに柔軟に対応したり、高速に応答したりすることが難しい。
【００１６】
そこで、実施形態に係る生成装置１００は、ユーザから取得した位置情報に関連する要素のうち、ユーザに対応付ける要素を抽出し、抽出した要素とユーザとを対応付けたデータベースを生成する。すなわち、生成装置１００は、各ユーザと位置情報とが対応付けられたデータベース（例えば、ユーザと当該ユーザの位置情報の履歴とが対応付けて蓄積されるデータベース）とともに、所定の要素とユーザとが対応付けられたデータベースを生成する。言い換えれば、生成装置１００は、位置情報を高速処理するための並列化（ダブルマッピング処理）を行うことにより、位置情報の効率的な活用を実現する。以下、実施形態に係る生成処理について、図１を用いて流れに沿って説明する。
【００１７】
まず、生成装置１００は、図１に示すユーザ端末１０１、１０２及び１０３の各々から位置情報を取得する（ステップＳ０１）。例えば、生成装置１００は、生成装置１００から各ユーザに提供されたスマートフォン用アプリケーションの機能を介して、ユーザの位置とユーザの識別情報（ＩＤ）とを対応付けた位置情報を取得する。例えば、生成装置１００は、生成装置１００が提供するサービスにユーザがログインしたことを契機としたり、バックグラウンドで動作するアプリケーション機能を利用したりして、当該ユーザの位置情報を取得する。なお、ユーザの識別情報とは、例えば、生成装置１００が提供するサービスにおいて各ユーザに付与されるサービス用ＩＤ（ユーザアカウント）等である。これにより、生成装置１００は、一人のユーザが複数のユーザ端末１０を利用していたり、異なる環境でサービスにログインしていたりする場合でも、当該ユーザを一意に特定して位置情報を取得することができる。
【００１８】
なお、生成装置１００は、ユーザの識別情報として、サービスを利用した際のクッキー（Cookie）情報や、端末固有の端末ＩＤ等を利用してもよい。生成装置１００は、一意にユーザを特定し、特定したユーザから位置情報を継続的に取得する。例えば、生成装置１００は、所定時間おき（例えば５分、１５分、３０分、１時間など）にユーザの位置情報を取得する。
【００１９】
生成装置１００は、ユーザ端末１０１、１０２及び１０３の各々から位置情報を取得した場合、各々のユーザと位置情報とを対応付けたデータをデータベースＤＢ０１に格納する（ステップＳ０２）。
【００２０】
図１に示すように、データベースＤＢ０１に格納される位置情報は、ユーザが所在した位置（例えば、経度や緯度等の具体的な数値）を示す情報である位置Ｇ０１と、位置Ｇ０１が観測された時間Ｔ０１との組み合わせで示される。データベースＤＢ０１は、ユーザを軸として当該ユーザの位置情報が集積される。言い換えれば、データベースＤＢ０１には、各ユーザの位置の推移が記憶される。
【００２１】
そして、生成装置１００は、取得した位置情報に基づき、ユーザに対応付ける要素を抽出する。図１の例では、生成装置１００は、ユーザに対応付ける要素として、ユーザに対応付けるエリア（領域）を抽出するものとする（ステップＳ０３）。
【００２２】
ここで、生成装置１００が抽出するエリアについて、図２を用いて説明する。図２は、実施形態に係る抽出処理の一例を説明するための図である。図２では、位置情報に基づいて生成装置１００が抽出するエリアの例を示す。
【００２３】
図２（ａ）では、生成装置１００が、ユーザから取得した情報に基づいて任意にエリアを抽出する例を示す。例えば、生成装置１００は、各ユーザの位置情報に基づいて、ユーザの所在する人数や、ユーザ同士の相対的な距離に関する情報を取得する。そして、生成装置１００は、エリアを抽出するための定義情報（例えば、ユーザ同士の相対距離が所定距離以下であるユーザ数が閾値を超えているか等の判定基準）に基づいて、エリアを動的に抽出する。
【００２４】
例えば、図２（ａ）では、所定の領域にユーザＵ１１とユーザＵ１２とユーザＵ１３とが所在する様子を模式的に示す。また、図２（ａ）では、ユーザＵ１１等が所在する領域とは所定距離だけ離れた領域にユーザＵ１４とユーザＵ１５とユーザＵ１６とが所在する様子を模式的に示す。生成装置１００は、ユーザＵ１１等の位置情報と定義情報に基づいて、ユーザＵ１１等の所在場所からエリアを抽出する。
【００２５】
例えば、図２（ａ）の例では、生成装置１００は、ユーザ同士の相対距離が所定距離以下であるユーザ数が３人以上観測される場合に、当該ユーザを囲むようにエリアを抽出するという定義情報を有するものとする。そして、生成装置１００は、取得した位置情報に基づいて、ユーザＵ１１やユーザＵ１２やユーザＵ１３が所在するエリアをエリアＡ１１として抽出する。また、生成装置１００は、取得した位置情報に基づいて、ユーザＵ１４やユーザＵ１５やユーザＵ１６が所在するエリアをエリアＡ１２として抽出する。このように、図２（ａ）の例では、生成装置１００は、実際に取得されたユーザの位置情報に基づいてエリアを抽出する。これにより、生成装置１００は、実際のユーザの分布に沿ったエリア抽出を行うことができる。なお、生成装置１００は、一度抽出したエリアを継続して使用してもよいし、ユーザの分布に応じて、所定期間ごと（例えば１週間ごと）にエリアを更新してもよい。
【００２６】
また、図２（ｂ）に示すように、生成装置１００は、既存の地図情報を取得し、地図情報に基づいてエリアを抽出してもよい。図２（ｂ）の例では、生成装置１００は、ユーザの位置をプロット可能な地図Ｍ０１を取得する。そして、生成装置１００は、例えば地図Ｍ０１に含まれる範囲をメッシュで区切ることにより、エリアＡ１３を抽出する。
【００２７】
また、図２（ｃ）に示すように、生成装置１００は、既存の地図情報とともに、既存の境界線に関する情報をさらに取得してもよい。例えば、生成装置１００は、公的に設定された境界線（例えば、市区町村の区切りなど）を含む地図Ｍ０２を取得する。そして、生成装置１００は、例えば地図Ｍ０２に含まれる公的に抽出された境界線を利用し、エリアＡ１４を抽出する。生成装置１００は、既存の地図情報を利用することにより、公的な情報を利用したサービス（例えば、所定タイミングに所定の町に所在する人数等を把握する場合など）にとって有用なエリア抽出を行うことができる。
【００２８】
図１に戻って説明を続ける。図２で説明したいずれかの処理によりエリアを抽出した生成装置１００は、抽出したエリアとユーザとを対応付けたデータを格納するためのデータベースであるデータベースＤＢ０２を生成する（ステップＳ０４）。
【００２９】
図１に示すように、データベースＤＢ０２に格納される位置情報は、抽出した要素（図１の例ではエリア）を軸として、当該エリアに所在したユーザが集積される。言い換えれば、データベースＤＢ０２には、各エリアに分布するユーザの推移が記憶される。
【００３０】
このように、実施形態に係る生成装置１００は、ユーザの位置情報を取得し、取得した位置情報に関連する要素のうち、ユーザに対応付ける要素（図１の例ではエリア）を抽出する。さらに、生成装置１００は、抽出した要素とユーザとを対応付けたデータベースＤＢ０２を生成する。
【００３１】
すなわち、実施形態に係る生成装置１００は、ユーザと対応付けられた位置情報を取得し続けるとともに、その処理に伴い、位置情報に関する要素を抽出して、抽出した要素を軸としたデータベースＤＢ０２を生成する。これにより、生成装置１００は、例えば、単なる各ユーザの位置情報の履歴情報ではなく、どのエリアにどのタイミングでどのようなユーザが所在していたか、といったような、データの利用者のニーズに合わせた情報を高速にデータ利用者に提供することができる。具体的には、生成装置１００は、ユーザと位置情報とを対応付けたデータベースＤＢ０１の構築とともに、位置情報から抽出した要素とユーザとを対応付けたデータベースＤＢ０２の生成という、ダブルマッピング処理を行う。これにより、生成装置１００は、データ利用者に対して有用な情報を高速に提供することが可能になるので、位置情報を効率的に活用することができる。
【００３２】
なお、上記の図１の例において、生成装置１００は、ユーザ端末１０が検知した位置情報をユーザ端末１０から取得することを示した。しかし、生成装置１００は、ユーザ端末１０からの送信によらず、所定時間おきにユーザ端末１０をクロール（crawl）することにより、位置情報を取得するようにしてもよい。また、生成装置１００は、必ずしもユーザ端末１０自身が検知した位置情報を取得するのではなく、生成装置１００がユーザ端末１０から検出した情報に基づいてユーザ端末１０の位置を推定し、推定した情報をユーザ端末１０の位置情報としてもよい。以下、上記のような実施形態に係る生成処理を実行する生成装置１００、及び生成装置１００を含む生成システム１について、詳細に説明する。
【００３３】
〔２．生成システムの構成〕
次に、図３を用いて、実施形態に係る生成装置１００が含まれる生成システム１の構成について説明する。図３は、実施形態に係る生成システム１の構成例を示す図である。図３に例示するように、実施形態に係る生成システム１には、ユーザ端末１０と、ウェブサーバ３０と、生成装置１００とが含まれる。これらの各種装置は、ネットワークＮを介して、有線又は無線により通信可能に接続される。また、図３に示す生成システム１に含まれる各装置の数は図示したものに限られない。例えば、生成システム１には、複数台のユーザ端末１０や、複数台のウェブサーバ３０が含まれてもよい。
【００３４】
ユーザ端末１０は、上述のように、スマートフォンを含む携帯電話機や、タブレット端末や、デスクトップ型ＰＣ（Personal  Computer）や、ノート型ＰＣや、ＰＤＡ（Personal  Digital  Assistant）等の情報処理端末である。また、ユーザ端末１０には、眼鏡型や時計型の情報処理端末であるウェアラブルデバイス（wearable  device）も含まれる。さらに、ユーザ端末１０には、位置情報を取得するための情報処理機能を有する種々のスマート機器が含まれてもよい。例えば、ユーザ端末１０には、ＴＶ（Television）や冷蔵庫、掃除機などのスマート家電や、自動車などのスマートビークル（Smart  vehicle）や、ドローン（drone）、家庭用ロボットなどが含まれてもよい。
【００３５】
ユーザ端末１０は、ユーザによる操作や、ユーザ端末１０が有する機能に応じて、自装置の位置情報を取得し、記憶する。例えば、ユーザ端末１０は、上述したＧＰＳシステムなどの外部システムと通信を行うことによって位置情報を取得する。そして、ユーザ端末１０は、取得した位置情報を生成装置１００に送信する。
【００３６】
ウェブサーバ３０は、各種サービスを提供するウェブサイトが含むサービスページ（ウェブページ）をユーザ端末１０に配信するサーバ装置である。例えば、ウェブサーバ３０は、ポータルサイト、ニュースサイト、オークションサイト、天気予報サイト、ショッピングサイト、ファイナンス（株価）サイト、路線検索サイト、地図提供サイト、旅行サイト、飲食店紹介サイト、ウェブブログなどに関連する各種情報を含むウェブページをユーザ端末１０に配信する。
【００３７】
生成装置１００は、上述のように、取得した位置情報に関連する要素のうち、ユーザに対応付ける要素を抽出し、抽出した要素とユーザとを対応付けたデータベースを生成するサーバ装置である。なお、生成装置１００は、サービスを提供するサービスサーバとしての機能を備えてもよい。すなわち、生成装置１００は、上述したウェブサーバ３０と一体であってもよい。
【００３８】
〔３．ユーザ端末の構成〕
次に、図４を用いて、実施形態に係るユーザ端末１０の構成について説明する。図４は、実施形態に係るユーザ端末１０の構成例を示す図である。図４に示すように、ユーザ端末１０は、通信部１１と、入力部１２と、表示部１３と、検知部１４と、記憶部１５と、制御部１６とを有する。
【００３９】
（通信部１１について）
通信部１１は、ネットワークＮと有線又は無線で接続され、生成装置１００やウェブサーバ３０との間で情報の送受信を行う。通信部１１は、例えばＮＩＣ（Network  Interface  Card）等によって実現される。
【００４０】
（入力部１２及び表示部１３について）
入力部１２は、ユーザから各種操作を受け付ける入力装置である。例えば、入力部１２は、ユーザ端末１０に備えられた操作キー等によって実現される。表示部１３は、各種情報を表示するための表示装置である。例えば、表示部１３は、液晶ディスプレイ等によって実現される。なお、ユーザ端末１０にタッチパネルが採用される場合には、入力部１２の一部と表示部１３とは一体化される。
【００４１】
（検知部１４について）
検知部１４は、ユーザ端末１０に関する各種情報を検知する。具体的には、検知部１４は、ユーザ端末１０に対するユーザの操作や、ユーザ端末１０の所在する位置情報や、ユーザ端末１０と接続されている機器に関する情報や、ユーザ端末１０における環境等を検知する。図４に示す例では、検知部１４は、操作検知部１４１と、位置検知部１４２と、外部装置検知部１４３と、環境検知部１４４とを有する。
【００４２】
（操作検知部１４１について）
操作検知部１４１は、ユーザ端末１０に対するユーザの操作を検知する。例えば、操作検知部１４１は、入力部１２に入力された情報に基づいて、ユーザの操作を検知する。すなわち、操作検知部１４１は、入力部１２に画面をタッチする操作の入力があったことや、音声の入力があったこと等を検知する。また、操作検知部１４１は、ユーザによって所定のアプリが起動されたことを検知してもよい。かかるアプリがユーザ端末１０内の撮像装置を動作させるアプリである場合、操作検知部１４１は、ユーザによって撮像機能が利用されていることを検知する。また、操作検知部１４１は、ユーザ端末１０内に備えられた加速度センサやジャイロセンサ等で検知されたデータに基づき、ユーザ端末１０自体が動かされているといった操作を検知してもよい。
【００４３】
（位置検知部１４２について）
位置検知部１４２は、ユーザ端末１０の現在位置を検知する。具体的には、位置検知部１４２は、ＧＰＳ衛星から送出される電波を受信し、受信した電波に基づいてユーザ端末１０の現在位置を示す位置（例えば、緯度及び経度）を検知する。
【００４４】
位置検知部１４２は、種々の手法により位置を検知することができる。例えば、位置検知部１４２は、ＧＰＳ衛星に限らず、ユーザ端末１０の様々な通信機能を利用して位置を検知してもよい。
【００４５】
例えば、位置検知部１４２は、ユーザ端末１０のＷｉ−Ｆｉ（登録商標）通信機能や、各通信会社が備える通信網を利用して、ユーザ端末１０の位置を検知する。具体的には、位置検知部１４２は、Ｗｉ−Ｆｉ通信等を行い、付近の基地局やアクセスポイントとの距離を測位することにより、自装置の位置を検知する。
【００４６】
また、位置検知部１４２は、ユーザ端末１０のＢｌｕｅｔｏｏｔｈ（登録商標）機能を利用して位置を検知してもよい。例えば、位置検知部１４２は、Ｂｌｕｅｔｏｏｔｈ機能によって接続されるビーコン（ｂｅａｃｏｎ）発信機と接続することにより、自装置の位置を検知する。
【００４７】
また、位置検知部１４２は、加速度センサやジャイロセンサ等を利用したＰＤＲ（Pedestrian  Dead  Reckoning）技術を利用して自装置の位置を検知してもよい。また、位置検知部１４２は、予め測定された構造物の地磁気のパターンと、自装置が備える地磁気センサとに基づいて、自装置の位置を検知してもよい。
【００４８】
また、例えば、ユーザ端末１０が駅改札や商店等で使用される非接触型ＩＣカードと同等の機能を備えている場合（もしくは、ユーザ端末１０が非接触型ＩＣカードの履歴を読み取る機能を備えている場合）、ユーザ端末１０によって駅での乗車料金の決済等が行われた情報とともに、使用された位置が記録される。位置検知部１４２は、かかる情報を取得することで、ユーザ端末１０の位置を検知してもよい。また、位置は、ユーザ端末１０が備える光学式センサや、赤外線センサ等によって検知されてもよい。
【００４９】
位置検知部１４２は、上述した手法の一つ又は組み合わせを用いて、自装置の位置を検知する。そして、後述する取得部１６１は、位置検知部１４２が検知した位置と、検知した時間との情報に基づいて、ユーザ端末１０の位置情報を取得する。
【００５０】
（外部装置検知部１４３について）
外部装置検知部１４３は、ユーザ端末１０に接続される外部装置を検知する。例えば、外部装置検知部１４３は、外部装置との相互の通信パケットのやり取りなどに基づいて、外部装置を検知する。そして、外部装置検知部１４３は、検知した外部装置をユーザ端末１０と接続される端末として認識する。また、外部装置検知部１４３は、外部装置との接続の種類を検知してもよい。例えば、外部装置検知部１４３は、外部装置と有線で接続されているか、無線通信で接続されているかを検知する。また、外部装置検知部１４３は、無線通信で用いられている通信方式等を検知してもよい。また、外部装置検知部１４３は、外部装置が発する電波を検知する電波センサや、電磁波を検知する電磁波センサ等によって取得される情報に基づいて、外部装置を検知してもよい。
【００５１】
（環境検知部１４４について）
環境検知部１４４は、ユーザ端末１０における環境を検知する。環境検知部１４４は、ユーザ端末１０に備えられた各種センサや機能を利用し、環境に関する情報を検知する。例えば、環境検知部１４４は、ユーザ端末１０の周囲の音を収集するマイクロフォンや、ユーザ端末１０の周囲の照度を検知する照度センサや、ユーザ端末１０の物理的な動きを検知する加速度センサ（又は、ジャイロセンサなど）や、ユーザ端末１０の周囲の湿度を検知する湿度センサや、ユーザ端末１０の所在位置における磁場を検知する地磁気センサ等を利用する。そして、環境検知部１４４は、各種センサを用いて、種々の情報を検知する。例えば、環境検知部１４４は、ユーザ端末１０の周囲における騒音レベルや、ユーザ端末１０の周囲が撮像に適する照度であるか等を検知する。さらに、環境検知部１４４は、カメラで撮影された写真や映像に基づいて周囲の環境情報を検知してもよい。
【００５２】
（記憶部１５について）
記憶部１５は、各種情報を記憶する。記憶部１５は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。例えば、記憶部１５は、検知部１４によって検知された各種情報を、検知された日時と対応付けて記憶する。具体的には、記憶部１５は、位置検知部１４２によって検知された位置に基づく位置情報を記憶する。
【００５３】
（制御部１６について）
制御部１６は、例えば、コントローラ（controller）であり、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、ユーザ端末１０内部の記憶装置に記憶されている各種プログラムがＲＡＭを作業領域として実行されることにより実現される。また、制御部１６は、コントローラであり、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。
【００５４】
制御部１６は、生成装置１００にユーザ端末１０の位置情報を提供する処理を制御する。例えば、制御部１６は、ユーザ端末１０の位置情報の提供処理を実現するためのプログラム（アプリケーション）を実行制御する。プログラムは、予めユーザ端末１０にインストールされていてもよいし、ユーザ端末１０を有するユーザＵ０１による操作に従ってサーバ装置（生成装置１００、又は、各種プログラムを提供する外部サーバ）からダウンロードされ、ユーザ端末１０にインストールされてもよい。
【００５５】
図４に示すように、制御部１６は、取得部１６１と、受信部１６２と、送信部１６３とを有し、以下に説明する情報処理の機能や作用を実現または実行する。例えば、制御部１６は、ＲＡＭを作業領域として上述したプログラムを実行することにより、以下に説明する情報処理の機能や作用を実現する。なお、制御部１６の内部構成は、図４に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部１６が有する各処理部の接続関係は、図４に示した接続関係に限られず、他の接続関係であってもよい。
【００５６】
（取得部１６１について）
取得部１６１は、各種情報を取得する。例えば、取得部１６１は、検知部１４を制御することにより、検知部１４によって検知される各種情報を取得する。例えば、取得部１６１は、位置検知部１４２によって検知された情報に基づいて、ユーザ端末１０の位置情報を取得する。なお、取得部１６１は、位置情報に限らず、ユーザ端末１０の周囲の環境に関する情報等の各種センサ情報を含む、ユーザ端末１０のコンテキストに関する情報を取得してもよい。
【００５７】
取得部１６１は、所定の時間毎に位置情報を取得するようにしてもよい。例えば、取得部１６１は、定期的（１分毎や、３分毎や、５分毎等）に、上述した検知部１４を制御すること等により、位置情報を取得する。なお、取得部１６１が位置情報を取得するタイミングは、生成装置１００によって設定されてもよい。
【００５８】
（受信部１６２について）
受信部１６２は、各種情報を受信する。例えば、受信部１６２は、生成装置１００から送信される位置情報の要求を受信する。受信部１６２は、受信した情報を、制御部１６の各処理部へ送る。
【００５９】
（送信部１６３について）
送信部１６３は、各種情報を送信する。例えば、送信部１６３は、受信部１６２に受信された要求に従い、位置情報を生成装置１００に送信する。
【００６０】
例えば、送信部１６３は、ユーザを識別するための識別情報（ユーザＩＤ）と、取得部１６１によって取得された位置情報と対応付けて生成装置１００に送信する。このとき、送信部１６３は、取得部１６１によって位置情報が取得されるたびに位置情報等を生成装置１００に送信してもよいし、所定の期間毎に位置情報等を生成装置１００に送信してもよい。例えば、送信部１６３は、定期的（１分毎、３分毎、５分毎、１時間毎など）に、位置情報を生成装置１００に送信する。また、送信部１６３が位置情報を取得するタイミングは、生成装置１００によって設定されてもよい。
【００６１】
〔４．生成装置の構成〕
次に、図５を用いて、実施形態に係る生成装置１００の構成について説明する。図５は、実施形態に係る生成装置１００の構成例を示す図である。図５に示すように、生成装置１００は、通信部１１０と、記憶部１２０と、制御部１３０とを有する。なお、生成装置１００は、生成装置１００を利用する管理者等から各種操作を受け付ける入力部（例えば、キーボードやマウス等）や、各種情報を表示するための表示部（例えば、液晶ディスプレイ等）を有してもよい。
【００６２】
（通信部１１０について）
通信部１１０は、例えばＮＩＣ等によって実現される。通信部１１０は、ネットワークＮと有線又は無線で接続され、ネットワークＮを介して、ユーザ端末１０やウェブサーバ３０との間で情報の送受信を行う。
【００６３】
（記憶部１２０について）
記憶部１２０は、例えば、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部１２０は、ユーザ情報記憶部１２１と、位置情報記憶部１２２と、エリア定義記憶部１２３と、エリア情報記憶部１２４とを有する。
【００６４】
（ユーザ情報記憶部１２１について）
ユーザ情報記憶部１２１は、ユーザに関する情報を記憶する。ここで、図６に、実施形態に係るユーザ情報記憶部１２１の一例を示す。図６は、実施形態に係るユーザ情報記憶部１２１の一例を示す図である。図６に示すように、ユーザ情報記憶部１２１は、「ユーザＩＤ」、「端末ＩＤ」、「属性情報」、「興味関心情報」、「行動履歴情報」といった項目を有する。
【００６５】
「ユーザＩＤ」は、ユーザを識別する識別情報を示す。なお、本明細書中では、図６に示すような識別情報を参照符号として用いる場合がある。例えば、ユーザＩＤ「Ｕ０１」によって識別されるユーザを「ユーザＵ０１」と表記する場合がある。「端末ＩＤ」は、ユーザが利用するユーザ端末１０を識別する識別情報を示す。なお、各ユーザは、複数の端末を所有していてもよい。
【００６６】
「属性情報」は、ユーザの属性に関する情報を示す。なお、図６に示した例では、属性情報を「Ｄ０１」といった概念で表記しているが、実際には、属性情報の項目には、ユーザの年齢や性別や職業や年収や居住地等の種々の具体的な情報が記憶される。
【００６７】
「興味関心情報」は、ユーザの興味関心に関する情報を示す。図６では、興味関心情報を「Ｅ０１」といった概念で表記しているが、実際には、興味関心情報の項目には、種々のサービスの利用を介して、生成装置１００やウェブサーバ３０によってユーザに設定された興味関心情報（ユーザの購買履歴や検索履歴から、ユーザが興味関心を抱いていると想定されるカテゴリや情報の内容等）が記憶される。
【００６８】
「行動履歴情報」は、ユーザの行動履歴に関する情報を示す。図６では、行動履歴情報を「Ｆ０１」といった概念で表記しているが、実際には、行動履歴情報の項目には、種々のサービスにおけるユーザの行動履歴（ウェブページ等の閲覧履歴や、商品の購買履歴や、検索履歴等）が記憶される。
【００６９】
すなわち、図６では、ユーザ情報記憶部１２１に記憶されるデータの一例として、ユーザＩＤ「Ｕ０１」によって示されるユーザＵ０１が、端末ＩＤ「Ｃ０１」で識別されるユーザ端末１０を利用していることを示している。また、ユーザＵ０１の属性情報が「Ｄ０１」であり、興味関心情報が「Ｅ０１」であり、行動履歴情報が「Ｆ０１」であることを示している。
【００７０】
（位置情報記憶部１２２について）
位置情報記憶部１２２は、ユーザの位置情報に関する情報を記憶する。なお、位置情報記憶部１２２は、図１に示したデータベースＤＢ０１に対応する。ここで、図７に、実施形態に係る位置情報記憶部１２２の一例を示す。図７は、実施形態に係る位置情報記憶部１２２の一例を示す図である。図７に示した例では、位置情報記憶部１２２は、「ユーザＩＤ」、「位置情報」といった項目を有する。また、「位置情報」の項目は、「取得日時」、「位置」といった小項目を有する。
【００７１】
「ユーザＩＤ」は、図６に示した同一の項目に対応する。「位置情報」は、ユーザに対応付けられて記憶される位置情報を示す。「取得日時」は、位置がユーザ端末１０によって検知（取得）された日時を示す。「位置」は、具体的なユーザ（言い換えればユーザ端末１０）の位置を示す。図７では、位置を「Ｇ０１」といった概念で表記しているが、実際には、位置の項目には、ユーザの位置を示す具体的な情報（例えば経度や緯度の数値等）が記憶される。
【００７２】
すなわち、図７では、位置情報記憶部１２２に記憶されるデータの一例として、ユーザＵ０１が、取得日時「Ｔ０１」において位置「Ｇ０１」に所在したことや、取得日時「Ｔ０２」において位置「Ｇ０２」に所在したことや、取得日時「Ｔ０３」において位置「Ｇ０３」に所在したことを示す位置情報と対応付けて記憶されていることを示している。
【００７３】
（エリア定義記憶部１２３について）
エリア定義記憶部１２３は、エリアの定義に関する情報を記憶する。ここで、図８に、実施形態に係るエリア定義記憶部１２３の一例を示す。図８は、実施形態に係るエリア定義記憶部１２３の一例を示す図である。図８に示した例では、エリア定義記憶部１２３は、「定義情報」、「エリアＩＤ」、「範囲」といった項目を有する。
【００７４】
「定義情報」は、エリアが抽出される際の定義を示す。「エリアＩＤ」は、定義情報に従い抽出されたエリアを識別する識別情報を示す。「範囲」は、エリアの地図上の範囲を示す。図８では、範囲を「Ｈ０１」といった概念で表記しているが、実際には、範囲の項目には、エリアが含む地理的範囲を示す具体的な情報（例えば経度や緯度の数値等）が記憶される。
【００７５】
すなわち、図８では、エリア定義記憶部１２３に記憶されるデータの一例として、「ユーザ数」や「相対距離」によってエリアが定義されるという定義情報があり、その定義情報に従って抽出されたエリアとしてエリアＩＤ「Ａ０１」で識別されるエリアＡ０１があり、その範囲は「Ｈ０１」であることを示している。
【００７６】
（エリア情報記憶部１２４について）
エリア情報記憶部１２４は、エリアとエリアに対応付けられた情報とに関する情報を記憶する。なお、エリア情報記憶部１２４は、図１に示したデータベースＤＢ０２に対応する。ここで、図９に、実施形態に係るエリア情報記憶部１２４の一例を示す。図９は、実施形態に係るエリア情報記憶部１２４の一例を示す図である。図９に示した例では、エリア情報記憶部１２４は、「エリアＩＤ」、「所在ユーザ情報」といった項目を有する。また、所在ユーザ情報は、「取得日時」、「ユーザＩＤ」といった小項目を有する。
【００７７】
「エリアＩＤ」は、図８に示した同一の項目に対応する。「所在ユーザ情報」は、エリアに含まれる（所在する）ユーザに関する情報を示す。「取得日時」及び「ユーザＩＤ」は、図７に示した同一の項目に対応する。
【００７８】
すなわち、図９では、エリア情報記憶部１２４に記憶されるデータの一例として、エリアＡ０１に所在する（対応付けられた）ユーザとして、取得日時「Ｔ０１」におけるユーザＵ０１や、取得日時「Ｔ０１」におけるユーザＵ０４や、取得日時「Ｔ０１」におけるユーザＵ０７や、取得日時「Ｔ０４」におけるユーザＵ０２等が存在することを示している。
【００７９】
（制御部１３０について）
制御部１３０は、例えば、コントローラであり、ＣＰＵやＭＰＵ等によって、生成装置１００内部の記憶装置に記憶されている各種プログラム（生成プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、コントローラであり、例えば、ＡＳＩＣやＦＰＧＡ等の集積回路により実現される。
【００８０】
図５に示すように、制御部１３０は、取得部１３１と、抽出部１３２と、生成部１３３と、送信部１３４とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１３０の内部構成は、図５に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部１３０が有する各処理部の接続関係は、図５に示した接続関係に限られず、他の接続関係であってもよい。
【００８１】
（取得部１３１について）
取得部１３１は、各種情報を取得する。例えば、取得部１３１は、ユーザ端末１０から、ユーザ端末１０を利用するユーザの位置情報を取得する。具体的には、取得部１３１は、位置情報として、ユーザ端末１０によって検知されたり、取得されたりした各種情報を取得する。取得部１３１は、所定の時間間隔でユーザ端末１０から位置情報を取得し、取得した位置情報を位置情報記憶部１２２に格納する。
【００８２】
取得部１３１は、複数のユーザの位置情報を取得する。そして、後述する抽出部１３２は、取得した複数のユーザの位置関係に基づいて、位置情報に関する要素として、ユーザと対応付けるエリアを抽出する。
【００８３】
また、取得部１３１は、位置情報に対応する地図情報を取得してもよい。地図情報は、例えば、地図情報を表示するアプリケーションや、カーナビゲーション機能を提供するためのアプリケーション等を提供するサービス提供者から取得する。後述する抽出部１３２は、取得した地図情報に基づいてユーザと対応付けるエリアを抽出してもよい。
【００８４】
また、取得部１３１は、位置情報以外のユーザに関する各種情報を取得してもよい。例えば、取得部１３１は、利用するサービスにおいてユーザが登録した情報に基づいて、ユーザの属性情報を取得する。また、取得部１３１は、サービスにおけるユーザの興味関心情報や、ユーザの行動履歴情報を取得する。取得部１３１は、種々の既存の技術（例えば、ユーザの興味関心や行動に基づいて広告を配信するための広告配信技術等）を利用して、種々の情報を取得してもよい。
【００８５】
なお、取得部１３１は、曜日情報を含めた日時情報とともに位置情報を取得するようにしてもよい。例えば、後述する抽出処理は、例えば、ユーザが平日の早朝に所在する位置や、平日の昼間に所在する位置や、休日に所在する位置など、日時や曜日との関係性によって行われてもよい。このため、取得部１３１は、曜日情報を含めた日時情報とともに位置情報を取得することで取得する位置情報の情報量を高め、より精度の高い生成処理が行われるようにしてもよい。
【００８６】
また、取得部１３１は、必ずしもユーザ端末１０が位置を検知した時間と同じ時間に位置情報を取得しなくてもよい。すなわち、取得部１３１は、リアルタイムに位置情報を取得するのではなく、処理に利用する際に、ユーザ端末１０の記憶部に記憶されている位置情報をまとめて取得するようにしてもよい。
【００８７】
また、取得部１３１は、位置情報として、ユーザ端末１０と他の装置における通信の状況を取得してもよい。具体的には、取得部１３１は、ユーザ端末１０がアクセスポイントを介してインターネットなどにアクセスしている通信状況を取得する。この場合、取得部１３１は、アクセスポイントとの通信状況から検出される情報を位置情報として取得する。具体的には、取得部１３１は、ユーザ端末１０と通信中のアクセスポイントの設置位置を割り出し、割り出したアクセスポイントの設置位置に基づいて、ユーザ端末１０の位置情報として取得するようにしてもよい。また、取得部１３１は、上述のように、駅改札の装置とユーザ端末１０との通信を検出することでユーザ端末１０の位置情報を取得したり、ユーザ端末１０のＩＰアドレスに基づいて位置情報を取得したりしてもよい。
【００８８】
（抽出部１３２について）
抽出部１３２は、取得部１３１によって取得された位置情報に関連する要素のうち、ユーザに対応付ける要素を抽出する。
【００８９】
例えば、抽出部１３２は、要素として、位置情報に対応する所定の領域（エリア）を抽出する。図１及び図２に示したように、抽出部１３２は、様々な手法を用いて、ユーザに対応付けるためのエリアを抽出する。
【００９０】
例えば、抽出部１３２は、複数のユーザの位置情報の関係性に基づいて所定のエリアを抽出する。具体的には、抽出部１３２は、複数のユーザの位置情報に基づいてユーザ間の距離を算出し、算出した距離に基づいてエリアを抽出する。より具体的には、抽出部１３２は、図２（ａ）に示したように、算出した複数のユーザの相互の距離と、そのような距離関係を有するユーザの合計数とに基づいてエリアを抽出する。
【００９１】
例えば、抽出部１３２は、エリアの定義情報に従い、ユーザの相互の距離が所定の距離以内であるユーザ数が所定のタイミングで所定数以上観測される場合に、それらのユーザを含む範囲を所定のエリアとして抽出する。なお、抽出部１３２は、エリアを抽出するための定義情報について、生成装置１００の管理者等から入力を受け付けてもよいし、種々の学習処理を経て、最適化されたユーザ数や所定距離を導出するようにしてもよい。
【００９２】
なお、抽出部１３２は、さらに地図情報を利用してエリアを抽出するようにしてもよい。地図情報には、河川や山などの地形情報が含まれる。そして、抽出部１３２は、複数のユーザの位置情報の関係性と、地図情報における地形情報とに基づいてエリアを抽出してもよい。すなわち、抽出部１３２は、ユーザ同士の絶対的な距離が所定閾値内であったとしても、それらのユーザの範囲が河川や山で区切られており、実際には同じ地区や地域に所在すると想定されない場合、そのユーザ同士を同じ範囲に含むようなエリアを抽出しないようにしてもよい。このような地形を含めた判定は、例えば、カーナビゲーションのように道路や地形情報を含めて距離を測定する既存技術を利用することで実現することができる。
【００９３】
抽出部１３２は、エリアを抽出する場合、全てのエリアを排他的に抽出してもよいし、一部が重複するようなエリアを抽出してもよい。また、抽出部１３２は、所在するユーザの数との関係性に基づいて、一定の密度（エリアの面積に対する所在ユーザの数）を超えない範囲でエリアを抽出するなど、種々の調整を行ってもよい。
【００９４】
また、抽出部１３２は、エリアとして、地図情報において予め定義された領域である既存領域を抽出してもよい。既存領域とは、例えば図２（ｂ）に示したように、地図をメッシュで区切ることにより定義されるエリアである。あるいは、既存領域とは、例えば図２（ｃ）に示したように、都道府県又は市区町村のような予め公的に定義されたエリアである。
【００９５】
なお、抽出部１３２は、位置情報を取得した際に常にエリアを抽出することを要しない。例えば、抽出部１３２は、取得した位置情報に対応するエリアが既に抽出されている場合には、新たにエリアを抽出することを要しない。この場合、抽出部１３２は、既に生成部１３３によって生成されているデータベースにユーザＩＤとエリアとを対応付けて情報を格納する。
【００９６】
（生成部１３３について）
生成部１３３は、抽出部１３２によって抽出された要素とユーザとを対応付けたデータベースを生成する。具体的には、生成部１３３は、抽出部１３２によって抽出された所定の領域（エリア）とユーザとを対応付けたデータベースを生成する。
【００９７】
例えば、生成部１３３は、ユーザＩＤと位置情報の履歴とを対応付けて蓄積し続けるデータベースである位置情報記憶部１２２とともに、取得した位置情報に基づいて抽出された要素とユーザＩＤとを対応付けて蓄積するためのデータベースであるエリア情報記憶部１２４を生成する。すなわち、生成部１３３は、一般的な分散処理型のデータベースでは解析処理が困難な位置情報等のデータについて、高速処理を行うことを可能にするデータベースを生成する。
【００９８】
生成部１３３は、抽出された要素とユーザとを対応付けて記憶するデータベースであれば、様々なデータベースを生成することができる。例えば、生成部１３３は、抽出部１３２によって抽出された既存領域とユーザとを対応付けたデータベースを生成してもよい。これにより、生成部１３３は、観測対象とする既存エリア（例えば、所定の町や地域）に所在するユーザ数などを高速に算出するためのデータベースを生成することができる。
【００９９】
なお、生成部１３３は、位置情報を取得した際に常にデータベースを生成することを要しない。例えば、生成部１３３は、取得した位置情報に対応するエリアが既に抽出されており、かかるエリアとユーザＩＤとを対応付けるためのデータベースが生成されている場合には、新たにデータベースを生成することを要しない。この場合、生成部１３３は、新たにデータベースに格納する情報（ユーザＩＤとエリアとが対応付けられた情報）に基づいて、既存のデータベースを更新する。すなわち、生成部１３３が実行するデータベースの生成とは、データベースの更新を含む概念である。
【０１００】
（送信部１３４について）
送信部１３４は、各種情報を送信する。例えば、送信部１３４は、ウェブサーバ３０等のサービス提供者側からのリクエストに応答して、各種情報を送信する。例えば、送信部１３４は、あるタイミングにおいて所定のエリアに所在するユーザ数の問い合わせがあった場合、対応するユーザ数を算出するとともに、算出した数を問い合わせ元に送信する。
【０１０１】
具体的には、送信部１３４は、エリアと時間との指定を含む問い合わせを受け付けた場合、指定された時間の間にそのエリアに所在していたユーザの数を算出し、算出した結果を問い合わせ元に送信する。
【０１０２】
〔５．処理手順〕
次に、図１０を用いて、実施形態に係る生成装置１００による処理の手順について説明する。図１０は、実施形態に係る処理手順を示すフローチャートである。
【０１０３】
図１０に示すように、生成装置１００は、ユーザの位置情報を取得したか否かを判定する（ステップＳ１０１）。生成装置１００は、位置情報を取得していない場合（ステップＳ１０１；Ｎｏ）、取得するまで待機する。
【０１０４】
一方、位置情報を取得した場合（ステップＳ１０１；Ｙｅｓ）、生成装置１００は、ユーザ（より正確には、ユーザＩＤ）と位置情報とを対応付けて記憶部１２０内に格納する（ステップＳ１０２）。
【０１０５】
その後、生成装置１００は、位置情報に対応するエリアが既に存在するか否かを判定する（ステップＳ１０３）。位置情報に対応するエリアが存在しない場合（ステップＳ１０３；Ｎｏ）、生成装置１００は、位置情報に基づいてエリアを抽出する（ステップＳ１０４）。位置情報に基づいてエリアを抽出した場合、もしくは、位置情報に対応するエリアが既に存在していた場合（ステップＳ１０３；Ｙｅｓ）、生成装置１００は、エリアと対応付けたデータベースを生成（もしくは更新）する（ステップＳ１０５）。
【０１０６】
〔６．変形例〕
上述した生成装置１００は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、実施形態の変形例について説明する。
【０１０７】
〔６−１．抽出する要素〕
上述した実施形態では、生成装置１００は、取得した位置情報に関連する要素として、ユーザが所在するエリアを抽出する例を示した。しかし、生成装置１００は、ユーザが所在するエリア以外を要素として抽出してもよい。
【０１０８】
例えば、生成装置１００は、ユーザの興味関心を示す情報である興味関心情報を取得した場合には、要素として興味関心情報を抽出し、抽出した興味関心情報とユーザとを対応付けたデータベースを生成してもよい。
【０１０９】
具体的には、生成装置１００は、ユーザが興味関心を有している対象とユーザＩＤとを対応付けたデータベースを生成する。これにより、生成装置１００は、位置情報を取得したユーザのうち、ある対象に興味関心を有しているユーザの数を算出したり、全ユーザのうちある対象に興味関心を有しているユーザの割合を算出したりすることができる。また、生成装置１００は、複数の要素を抽出してもよい。例えば、生成装置１００は、エリアとユーザとを対応付けたデータベースに加えて、興味関心情報とユーザとを対応付けたデータベースを生成してもよい。これにより、生成装置１００は、位置情報に基づくユーザの分析をより高速に、かつ、精度よく行うことができる。
【０１１０】
〔６−２．指定された要素の抽出〕
生成装置１００は、ウェブサーバ３０等のサービス提供者からの要望に基づいて要素を抽出してもよい。例えば、サービス提供者は、自身が提供したサービスに関心を有しているユーザの数や、自身が提供するサービスと関連するサービスに興味を有するユーザの数や、ある地域において自身が提供したサービスを利用しているユーザの数等を知りたい場合がある。この場合、サービス提供者は、生成装置１００に対して、自身が知りたい情報を送信する。そして、生成装置１００は、サービス提供者の要望に沿って要素を抽出する。
【０１１１】
すなわち、生成装置１００は、要素に関する指定情報を取得し、取得した指定情報に基づいて要素を抽出してもよい。指定情報とは、例えば、サービス提供者が指定する情報であり、例えば、特定の地図上の領域（範囲）を指定する情報であったり、特定の興味関心の対象を示したりする情報である。これにより、生成装置１００は、サービス提供者の要望に沿った分析を行うためのデータベースを適切に生成することができる。
【０１１２】
〔６−３．位置情報〕
上記実施形態では、位置情報は、ユーザ端末１０が取得するＧＰＳ情報や、アクセスポイント等から取得することを説明した。しかし、生成装置１００は、異なる情報からユーザ端末１０の位置情報を取得してもよい。
【０１１３】
例えば、生成装置１００は、ユーザ端末１０がウェブサーバ３０から提供される各種サービスを利用した履歴に基づいて、ユーザ端末１０の位置情報を取得してもよい。具体的には、生成装置１００は、路線検索サービスにおいて頻繁にユーザ端末１０から入力される駅を、ユーザの最寄り駅と推定する。そして、生成装置１００は、最寄り駅を含む所定範囲をユーザ端末１０が所在する地域として取得してもよい。かかる処理によれば、生成装置１００は、ユーザ端末１０が位置情報を取得する機能を有していない場合であっても、ユーザ端末１０の位置情報を取得することができる。
【０１１４】
〔６−４．ユーザ端末の構成〕
上記実施形態では、ユーザ端末１０の構成例について図４を用いて説明した。しかし、ユーザ端末１０は、図４で例示した全ての処理部を備えることを必ずしも要しない。例えば、ユーザ端末１０は、表示部１３や検知部１４を必ずしも備えていなくてもよい。また、ユーザ端末１０は、２以上の機器に分離されて図４を示す構成が実現されてもよい。例えば、ユーザ端末１０は、少なくとも検知部１４と取得部１６１とを有する検知装置と、少なくとも通信部１１を有する通信装置とが分離された構成を有する、２台以上の機器により実現されてもよい。
【０１１５】
〔７．ハードウェア構成〕
上述してきた実施形態に係る生成装置１００やユーザ端末１０やウェブサーバ３０は、例えば図１１に示すような構成のコンピュータ１０００によって実現される。以下、生成装置１００を例に挙げて説明する。図１１は、生成装置１００の機能を実現するコンピュータ１０００の一例を示すハードウェア構成図である。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ（Read  Only  Memory）１３００、ＨＤＤ（Hard  Disk  Drive）１４００、通信インターフェイス（Ｉ／Ｆ）１５００、入出力インターフェイス（Ｉ／Ｆ）１６００、及びメディアインターフェイス（Ｉ／Ｆ）１７００を有する。
【０１１６】
ＣＰＵ１１００は、ＲＯＭ１３００又はＨＤＤ１４００に記憶されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるブートプログラムや、コンピュータ１０００のハードウェアに依存するプログラム等を記憶する。
【０１１７】
ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を記憶する。通信インターフェイス１５００は、通信網５００（図３に示したネットワークＮに対応）を介して他の機器からデータを受信してＣＰＵ１１００へ送り、ＣＰＵ１１００が生成したデータを、通信網５００を介して他の機器へ送信する。
【０１１８】
ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。ＣＰＵ１１００は、入出力インターフェイス１６００を介して、入力装置からデータを取得する。また、ＣＰＵ１１００は、入出力インターフェイス１６００を介して生成したデータを出力装置へ出力する。
【０１１９】
メディアインターフェイス１７００は、記録媒体１８００に記憶されたプログラム又はデータを読み取り、ＲＡＭ１２００を介してＣＰＵ１１００に提供する。ＣＰＵ１１００は、かかるプログラムを、メディアインターフェイス１７００を介して記録媒体１８００からＲＡＭ１２００上にロードし、ロードしたプログラムを実行する。記録媒体１８００は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１２０】
例えば、コンピュータ１０００が実施形態に係る生成装置１００として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされたプログラムを実行することにより、制御部１３０の機能を実現する。また、ＨＤＤ１４００には、記憶部１２０内のデータが記憶される。コンピュータ１０００のＣＰＵ１１００は、これらのプログラムを記録媒体１８００から読み取って実行するが、他の例として、他の装置から通信網５００を介してこれらのプログラムを取得してもよい。
【０１２１】
〔８．その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【０１２２】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図５に示した抽出部１３２と、生成部１３３とは統合されてもよい。また、例えば、記憶部１２０に記憶される情報は、ネットワークＮを介して、外部に備えられた記憶装置に記憶されてもよい。
【０１２３】
また、例えば、上記実施形態では、生成装置１００が、ユーザ端末１０の位置情報を取得する取得処理と、抽出された要素とユーザとを対応付けたデータベースを生成する生成処理とを行う例を示した。しかし、上述した生成装置１００は、取得処理を行う取得装置と、生成処理を行う生成装置とに分離されてもよい。この場合、取得装置は、取得部１３１を少なくとも有する。生成装置は、生成部１３３を少なくとも有する。この場合、実施形態に係る生成装置１００による処理は、取得装置と、生成装置といった各装置を含む生成システム１によって実現される。
【０１２４】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、生成装置１００は、実施形態に係る生成処理について、例えば、分散処理を行うデータベースであって、位置情報データを高速処理するためのダブルマッピング構造を有するデータベースのいずれにも適用可能である。一例として、実施形態に係る生成処理は、HadoopのMapReduce処理等に適用可能である。
【０１２５】
〔９．効果〕
上述してきたように、実施形態に係る生成装置１００は、取得部１３１と、抽出部１３２と、生成部１３３とを有する。取得部１３１は、ユーザの位置情報を取得する。抽出部１３２は、取得部１３１によって取得された位置情報に関連する要素のうち、ユーザに対応付ける要素を抽出する。生成部１３３は、抽出部１３２によって抽出された要素とユーザとを対応付けたデータベースを生成する。
【０１２６】
このように、実施形態に係る生成装置１００は、位置情報を取得し続けるとともに、位置情報に関連する要素を抽出して、抽出した要素とユーザとを対応付けたデータベースを生成する。これにより、生成装置１００は、単なる各ユーザの位置情報の履歴情報のみならず、要素に対応したユーザに関するマッピング情報を有することができるため、位置情報に関する分析処理等を高速に行うことができる。結果として、生成装置１００は、データ利用者等に対して有用な情報を高速に提供することが可能になるので、位置情報を効率的に活用することができる。
【０１２７】
また、抽出部１３２は、要素として、位置情報に対応する所定の領域を抽出する。生成部１３３は、抽出部１３２によって抽出された所定の領域とユーザとを対応付けたデータベースを生成する。
【０１２８】
このように、実施形態に係る生成装置１００は、ユーザが所在する領域を要素として抽出する。これにより、生成装置１００は、各ユーザの位置の動向のみならず、ある領域にユーザがどのくらい所在するかといった、領域を軸とした情報を高速に提供することができる。
【０１２９】
また、取得部１３１は、複数のユーザの位置情報を取得する。抽出部１３２は、複数のユーザの位置情報の関係性に基づいて所定の領域を抽出する。
【０１３０】
このように、実施形態に係る生成装置１００は、複数のユーザの位置情報の位置関係に基づいて領域を抽出してもよい。これにより、生成装置１００は、実際にユーザが所在する範囲を領域として抽出できるので、実状に即した分析処理を容易に行うことができる。
【０１３１】
また、抽出部１３２は、複数のユーザの位置情報に基づいてユーザ間の距離を算出し、算出した距離に基づいて所定の領域を抽出する。
【０１３２】
このように、実施形態に係る生成装置１００は、ユーザ間の距離に基づいて領域を算出することで、ユーザの実際の分布状況に応じて領域を適切に抽出することができる。
【０１３３】
また、取得部１３１は、位置情報に対応する地図情報を取得する。抽出部１３２は、複数のユーザの位置情報の関係性と、地図情報における地形情報とに基づいて、所定の領域を抽出する。
【０１３４】
このように、実施形態に係る生成装置１００は、地形情報を参照することで、例えば、河川や山などを隔てて所在するユーザなど、地形的に同じ範囲に含めることが適切でないユーザを排除して領域を抽出することができる。これにより、生成装置１００は、より実状に即した領域を抽出することができる。
【０１３５】
また、取得部１３１は、位置情報に対応する地図情報を取得する。抽出部１３２は、所定の領域として、地図情報において予め定義された領域である既存領域を抽出する。生成部１３３は、抽出部１３２によって抽出された既存領域とユーザとを対応付けたデータベースを生成する。
【０１３６】
このように、実施形態に係る生成装置１００は、地図情報を利用して、既存の領域を抽出するようにしてもよい。これにより、生成装置１００は、都道府県別のユーザ分布や、市区町村ごとのユーザ分布など、ニーズが比較的多いと想定される要求に対して正確に応答するためのデータベースを生成することができる。
【０１３７】
また、取得部１３１は、ユーザの興味関心を示す情報である興味関心情報を取得する。抽出部１３２は、要素として興味関心情報を抽出する。生成部１３３は、抽出部１３２によって抽出された興味関心情報とユーザとを対応付けたデータベースを生成する。
【０１３８】
このように、実施形態に係る生成装置１００は、要素として興味関心情報を抽出してもよい。これにより、生成装置１００は、位置情報を収集したユーザのうち、興味関心を軸として類似するユーザを抽出したり、特定の対象に興味を有するユーザの数を算出したりすることができる。すなわち、生成装置１００は、より詳細にユーザを分析することができる。
【０１３９】
また、取得部１３１は、要素に関する指定情報を取得する。抽出部１３２は、取得部１３１によって取得された指定情報に基づいて要素を抽出する。
【０１４０】
このように、実施形態に係る生成装置１００は、指定情報に基づいて要素を抽出することで、例えばサービス提供者等の要望に応じたデータベースを生成する。これにより、生成装置１００は、サービス提供者の要望に沿った分析を行うためのデータベースを適切に生成することができる。
【０１４１】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１４２】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【０１４３】
１  生成システム
１０  ユーザ端末
３０  ウェブサーバ
１００  生成装置
１１０  通信部
１２０  記憶部
１２１  ユーザ情報記憶部
１２２  位置情報記憶部
１２３  エリア定義記憶部
１２４  エリア情報記憶部
１３０  制御部
１３１  取得部
１３２  抽出部
１３３  生成部
１３４  送信部
【図１】
2019128611.tif 000003
【図２】
2019128611.tif 000004
【図３】
2019128611.tif 000005
【図４】
2019128611.tif 000006
【図５】
2019128611.tif 000007
【図６】
2019128611.tif 000008
【図７】
2019128611.tif 000009
【図８】
2019128611.tif 000010
【図９】
2019128611.tif 000011
【図１０】
2019128611.tif 000012
【図１１】
2019128611.tif 000013
【手続補正書】
【提出日】平成31年2月13日(2019.2.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザの位置情報と、当該位置情報が検知された日時とを取得する取得部と、
前記取得部によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出部と、
前記抽出部によって抽出された要素と、前記要素に対応付けられたユーザ及び当該要素が当該ユーザに対応付けられた日時と、を対応付けたデータベースであって、当該要素を変更することなく当該要素に対応付けるユーザが時間経過に応じて更新されるデータベースを生成し、生成したデータベースを記憶部に格納する生成部と、
を備えたことを特徴とする生成装置。
【請求項２】
前記抽出部は、
前記要素として、前記位置情報に対応する所定の領域を抽出し、
前記生成部は、
前記抽出部によって抽出された所定の領域と前記ユーザとを対応付けたデータベースを生成する、
ことを特徴とする請求項１に記載の生成装置。
【請求項３】
前記取得部は、
複数のユーザの位置情報を取得し、
前記抽出部は、
前記複数のユーザの位置情報の関係性に基づいて前記所定の領域を抽出する、
ことを特徴とする請求項２に記載の生成装置。
【請求項４】
前記抽出部は、
前記複数のユーザの位置情報に基づいてユーザ間の距離を算出し、算出した距離に基づいて前記所定の領域を抽出する、
ことを特徴とする請求項３に記載の生成装置。
【請求項５】
前記取得部は、
前記位置情報に対応する地図情報を取得し、
前記抽出部は、
前記複数のユーザの位置情報の関係性と前記地図情報における地形情報とに基づいて、前記所定の領域を抽出する、
ことを特徴とする請求項３又は４に記載の生成装置。
【請求項６】
前記取得部は、
前記位置情報に対応する地図情報を取得し、
前記抽出部は、
前記所定の領域として、前記地図情報において予め定義された領域である既存領域を抽出し、
前記生成部は、
前記抽出部によって抽出された既存領域と前記ユーザとを対応付けたデータベースを生成する、
ことを特徴とする請求項２に記載の生成装置。
【請求項７】
前記取得部は、
前記ユーザの興味関心を示す情報である興味関心情報を取得し、
前記抽出部は、
前記要素として前記興味関心情報を抽出し、
前記生成部は、
前記抽出部によって抽出された興味関心情報と前記ユーザとを対応付けたデータベースを生成する、
ことを特徴とする請求項１〜６のいずれか一つに記載の生成装置。
【請求項８】
前記取得部は、
前記要素に関する指定情報を取得し、
前記抽出部は、
前記取得部によって取得された指定情報に基づいて前記要素を抽出する、
ことを特徴とする請求項１〜７のいずれか一つに記載の生成装置。
【請求項９】
コンピュータが実行する生成方法であって、
ユーザの位置情報と、当該位置情報が検知された日時とを取得する取得工程と、
前記取得工程によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出工程と、
前記抽出工程によって抽出された要素と、前記要素に対応付けられたユーザ及び当該要素が当該ユーザに対応付けられた日時と、を対応付けたデータベースであって、当該要素を変更することなく当該要素に対応付けるユーザが時間経過に応じて更新されるデータベースを生成し、生成したデータベースを記憶部に格納する生成工程と、
を含んだことを特徴とする生成方法。
【請求項１０】
ユーザの位置情報と、当該位置情報が検知された日時とを取得する取得手順と、
前記取得手順によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出手順と、
前記抽出手順によって抽出された要素と、前記要素に対応付けられたユーザ及び当該要素が当該ユーザに対応付けられた日時と、を対応付けたデータベースであって、当該要素を変更することなく当該要素に対応付けるユーザが時間経過に応じて更新されるデータベースを生成し、生成したデータベースを記憶部に格納する生成手順と、
をコンピュータに実行させることを特徴とする生成プログラム。
【請求項１１】
ユーザの位置情報を取得する取得部と、
前記取得部によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出部と、
前記抽出部によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成部と、
を備え、
前記取得部は、
所定のサービスを提供する提供者から、前記位置情報に対応する所定の領域に関する指定、及び、当該所定のサービスを利用中であるユーザを指定する指定情報を取得し、
前記抽出部は、
前記取得部によって取得された指定情報に基づいて、前記ユーザに対応付ける要素として、前記所定の領域及び前記所定のサービスを利用中であるか否かを示す情報を抽出し、
前記生成部は、
前記ユーザと、前記抽出部によって抽出された所定の領域、及び、当該ユーザが前記所定のサービスを利用中であるか否かを示す情報とを対応付けたデータベースを生成する、
ことを特徴とする生成装置。
【請求項１２】
コンピュータが実行する生成方法であって、
ユーザの位置情報を取得する取得工程と、
前記取得工程によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出工程と、
前記抽出工程によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成工程と、
を含み、
前記取得工程は、
所定のサービスを提供する提供者から、前記位置情報に対応する所定の領域に関する指定、及び、当該所定のサービスを利用中であるユーザを指定する指定情報を取得し、
前記抽出工程は、
前記取得工程によって取得された指定情報に基づいて、前記ユーザに対応付ける要素として、前記所定の領域及び前記所定のサービスを利用中であるか否かを示す情報を抽出し、
前記生成工程は、
前記ユーザと、前記抽出工程によって抽出された所定の領域、及び、当該ユーザが前記所定のサービスを利用中であるか否かを示す情報とを対応付けたデータベースを生成する、
ことを特徴とする生成方法。
【請求項１３】
ユーザの位置情報を取得する取得手順と、
前記取得手順によって取得された位置情報に関連する要素のうち、前記ユーザに対応付ける要素を抽出する抽出手順と、
前記抽出手順によって抽出された要素と前記ユーザとを対応付けたデータベースを生成する生成手順と、
をコンピュータに実行させ、
前記取得手順は、
所定のサービスを提供する提供者から、前記位置情報に対応する所定の領域に関する指定、及び、当該所定のサービスを利用中であるユーザを指定する指定情報を取得し、
前記抽出手順は、
前記取得手順によって取得された指定情報に基づいて、前記ユーザに対応付ける要素として、前記所定の領域及び前記所定のサービスを利用中であるか否かを示す情報を抽出し、
前記生成手順は、
前記ユーザと、前記抽出手順によって抽出された所定の領域、及び、当該ユーザが前記所定のサービスを利用中であるか否かを示す情報とを対応付けたデータベースを生成する、
ことを特徴とする生成プログラム。