以下、本発明の実施形態について、図面を参照しつつ詳細に説明する。ただし、発明の範囲をこれらに限定するものではない。本実施形態の情報処理システムは、端末からの測位情報、端末のユーザの行動拠点の情報、及びユーザの行動パターンの情報等を必要に応じて用いることによって、ユーザの勤務日を判定する。
[1.情報処理システムの構成]
図1は、本実施形態に係る情報処理システムの概略構成の一例を示すブロック図である。情報処理システム10は、ネットワークNを介して携帯移動端末装置(以下、「携帯端末」という。)20と相互に接続されている。
情報処理システム10は、主制御手段101、通信手段102、測位情報格納手段103、基礎メッシュデータ生成手段104、メッシュデータ生成手段105(日別メッシュ生成手段106(滞在秒数/測位回数集計手段107、配分補完手段108)、期間別メッシュ生成手段109を含む)、日常圏設定手段110、グループ処理手段111、行動拠点メッシュグループ特定手段112、勤務日休日特定手段113、生活時間帯特定手段114、測位情報DB120、基礎メッシュデータDB121、日別メッシュDB122、期間別メッシュDB123、日常圏DB124、行動拠点DB125、メッシュグループDB126、施設情報DB127、行動パターンDB128、勤務日DB129、ユーザ情報DB130、及び生活時間帯DB131などの各種機能実現手段を主に備える。
情報処理システム10は、CPU、ROMやRAM等のメモリ、各種の情報を格納する外部記憶装置、入出力インタフェース、通信インタフェース及びこれらを結ぶバスを備える専用又は汎用のサーバ・コンピュータを用いて実現することができ、例えば、CPUがROM等に格納された所定のプログラムを実行することにより、上記各機能実現手段として機能する。なお、情報処理システム10は、単一のコンピュータより構成されるものであっても、ネットワーク上に分散した複数のコンピュータより構成されるものであってもよい。
主制御手段101は、情報処理システム10の動作全体及び上述した各手段の動作を制御する。通信手段102は、ネットワークNを介して携帯端末20と通信することにより各種情報を送受信するためのインタフェースである。通信手段102は、携帯端末20から送信される測位情報を受け付ける受付手段としても機能する。
測位情報格納手段103は、複数のユーザについて、該ユーザの携帯端末20から送信される測位情報を測位情報DB120に格納する。測位情報については後述するが、携帯端末20の現在位置を測位した測位点(座標情報)と、当該測位点の測位時刻と、測位精度と、携帯端末20のユーザを一意的に識別するユーザ識別情報(ID)と、が含まれる。
基礎メッシュデータ生成手段104は、測位情報DB120に格納されている測位情報に基づいて、ユーザ毎かつ測位日毎に測位点、測位時刻(滞在開始時刻)、測位精度を地図の該当メッシュ領域に対応付けた基礎メッシュデータを生成する。メッシュ領域とは、緯度経度に基づいて地図を分割して得られる複数の分割領域であり、仕様や設計に応じて適宜分割領域の形状やサイズを設定することができる。例えば、メッシュ領域の形状は、四角形、六角形、ひし形等の多角形や、円等の曲線で囲まれた領域とすることができる。また例えば、ユーザが頻繁に滞在するエリアを特定したい場合はメッシュ領域のサイズを大きく設定し、一方、ユーザが頻繁に訪れる店などを特定したい場合はメッシュ領域のサイズを小さく設定することができる。またメッシュ領域のサイズは一定でなくてもよい。例えば、都市部のメッシュはより小さく(細かく)するようにしてもよい。また、人口統計情報によって地域毎にメッシュのサイズを変えたり(例えば人口が多い地域のメッシュは小さくする。)、市区町村の分類、宅地種別、日常圏の情報などに基づいてサイズを設定してもよい。また、ある期間(例えば8月、平日の朝等)の測位情報や現在の測位情報に基づいてサイズを設定してもよい。例えば、ある期間に測位したユーザが少ない場合、ある期間の測位情報の測位精度が低い場合、メッシュを大きくすることが考えられる。なお、ある期間に測位したユーザが多い場合であっても、測位精度が低い場合は、メッシュは大きくすることが望ましい。測位点に該当するメッシュ領域とは、測位点の座標情報が属するメッシュ領域を意味する。
図2は、測位情報DB120に格納されている測位情報に基づいて基礎メッシュデータが生成される様子を説明する図である。同図には、ユーザ(Aさん)の測位日(2010/03/03)について、各メッシュ領域に測位点及び測位時刻を対応付けた基礎メッシュデータB1が該当日におけるユーザの行動軌跡として記載されている。なお、生成された基礎メッシュデータは、基礎メッシュデータDB121に格納される。
図1に戻り、メッシュデータ生成手段105は、測位情報を受け付けた複数のユーザについて、基礎メッシュデータDB121に格納されている基礎メッシュデータに基づいて、各メッシュ領域における所定期間内の測位日数、測位回数、滞在時間、メッシュデータ信頼度を行動拠点パラメータとして算出し、各メッシュ領域と当該取得した行動拠点パラメータとを対応付けたメッシュデータを生成する。測位日数は、所定期間内に該当メッシュ領域で測位が行われた日数の合計(同一日は二重加算しない)であり、該当メッシュ領域にユーザが滞在した日数を示すものであるため、以下これを「滞在日数」ともいう。測位回数は、所定期間内に該当メッシュ領域で測位が行われた回数の合計である。ユーザの滞在時間は、所定期間内に該当メッシュ領域にユーザが滞在した時間の合計である。本実施形態では、滞在時間を秒数にて表すため、以下これを「滞在秒数」ともいう。メッシュデータ信頼度は、メッシュデータの信頼度を示す値である。行動拠点パラメータとして、滞在日数、測位回数、滞在秒数、メッシュデータ信頼度以外の情報を算出してもよい。なお、メッシュデータには、日別メッシュデータと期間別メッシュデータとがあり、以下、これらについて説明する。
日別メッシュ生成手段106は、ユーザ毎に、所定単位期間毎の各メッシュ領域における測位回数、滞在秒数、メッシュデータ信頼度を含む、単位期間別メッシュデータを生成する。所定単位期間とは、メッシュデータを生成する最小単位期間であり、例えば、「1日」や「半日」など、仕様・設計に応じて適宜設定することができる。本実施形態では、所定単位期間に「1日」が設定されているため、以下、単位期間別メッシュデータを「日別メッシュデータ」という。
図3は、基礎メッシュデータDB121に格納されている基礎メッシュデータに基づいて日別メッシュデータが生成される様子を説明する図である。同図には、ユーザ(Aさん)の測位日(2010/03/03)について、各メッシュ領域に滞在秒数と測位回数を対応付けたメッシュデータM1が記載されている。なお、本実施形態ではメッシュ領域ごとに測位回数と滞在秒数を算出して対応づける場合について説明しているが、測位回数又は滞在秒数のみを算出して対応づけるようにしてもよい。生成された日別メッシュデータは、日別メッシュDB122に格納される。
図1に戻り、日別メッシュ生成手段106は、具体的には、滞在秒数/測位回数集計手段107と、配分補完手段108とを有する。
滞在秒数/測位回数集計手段107は、基礎メッシュデータDB121に格納されている基礎メッシュデータに基づいて、各メッシュ領域における測位点の測位回数、前記携帯端末のユーザの滞在秒数、メッシュデータ信頼度を所定単位期間ごとに算出し、各メッシュ領域と当該算出した測位回数、滞在秒数、メッシュデータ信頼度とを対応付ける。各メッシュ領域における測位回数は、該当メッシュ領域において測位が行われた回数を合計することにより算出する。各メッシュ領域における滞在秒数は、後述する配分補完手段108により該当メッシュ領域に配分された配分時間を合計することにより算出する。メッシュデータ信頼度は、例えば、該当メッシュ領域に対応づけられた測位情報の測位精度を平均することによって算出する。
配分補完手段108は、メッシュ領域に対応付けられた測位点から、第1測位点と時間軸上当該第1測位点の次に配置される第2測位点を選択する。第1測位点は移動前地点、第2測位点は移動後地点とも呼ばれる。次に、当該第1測位点の第1測位時刻から当該第2測位点の第2測位時刻までの時間(以下、「測位点間時間」という。)と、第2測位点と第1測位点との間の距離(以下、「測位点間距離」という。)と、を算出する。そして、当該測位点間時間と当該測位点間距離に基づいて配分条件を決定し、当該決定した配分条件に従って、当該測位点間時間を第1測位点から第2測位点への移動経路上に位置するメッシュ領域(第1測位点の第1メッシュ領域と第2測位点の第2メッシュ領域を含む)に配分する。なお、配分には0時間を配分することも含まれ、この場合には、配分しないことと実質的に同じである。
配分条件は、仕様や設計に応じて適宜設定することができ、その内容に特に限定はないが、本実施形態では、携帯端末からの測位情報の送信条件や構成に応じて、以下のように配分条件を設定している。具体的には、本実施形態における携帯端末20は、所定の送信時間間隔(例:5分)で測位情報を情報処理システム10へ送信し、ユーザが移動しない場合は、消費電力セーブ等の理由により測位情報を送信しないように構成されている。すなわち、ユーザが電波圏内にいる場合、携帯端末20からの測位情報は、ユーザが移動している場合にのみ所定の送信時間間隔で送信される。したがって、第1測位時刻と第2測位時刻間の測位点間時間から移動時間を除いた時間(以下、「移動時間減算済み時間」)は、移動前地点である第1測位点にユーザが滞在していた時間と推定することができるから、当該移動時間減算済み時間を、第1測位点のメッシュ領域に配分する。
次に、第1測位点と第2測位点との間のユーザの移動内容(移動手段や移動経路)を推定できる場合(第1測位点と第2測位点との間に連続性がある場合)は、第1測位点から第2測位点への推定された移動経路(以下、「推定移動経路」という。)上に位置するメッシュ領域に、移動時間を略均等に配分する(第1配分条件)。すなわち、推定移動経路上のメッシュ領域について滞在秒数を補完する。一方、第1測位点と第2測位点との間のユーザの移動内容を推定できない場合(第1測位点と第2測位点との間に連続性がない場合)は、移動時間のメッシュ領域への配分は行わない(0時間を配分する)(第2配分条件)。すなわち、メッシュ領域への滞在秒数の補完は行われない。
移動内容の推定可否を判断する方法は、仕様や設計に応じて適宜設定することができ、その内容に特に限定はないが、例えば、測位点間時間及び/又は測位点間距離が所定基準時間未満及び/又は所定基準距離未満である場合は、歩行などによる移動であるとみなしてユーザの移動経路を推定することができるとする。一方、所定基準時間未満及び/又は所定基準距離未満でない場合は、例えば地下鉄利用時などによる移動であるとみなしてユーザの移動経路を推定することができないとすることができる。
また、移動時間の算出方法は、仕様や設計に応じて適宜設定することができ、その内容に特に限定はないが、例えば、携帯端末20の送信時間間隔を利用する方法や、測位点間距離と移動手段(例:電車、車、徒歩)に応じた所定時速より移動時間を計算する方法などがある。本実施形態では、第1配分条件の場合は、携帯端末20における測位情報の送信時間間隔(例:5分)を移動時間として設定する。また、第2配分条件の場合は、測位点間距離と予め設定した所定の時速(例:30km)とに基づいて第1測位点から第2測位点への移動時間を算出する。なお、所定の時速は、推定した移動手段などに応じて適宜設定することができ、例えば、第1配分条件については徒歩時速を利用して移動時間を算出するようにしてもよい。
また、移動経路の特定方法も、仕様や設計に応じて適宜設定することができ、その内容に特に限定はないが、本実施形態では、第1測位点と第2測位点とを結んだ結線によって移動経路を表している。なお、図4(A)において結線は、直線で示されているが、結線は直線に限られず、例えば、道路、路線、建物などに応じて推定される任意の移動経路に沿った形状を有することができる。また、結線上に位置するメッシュ領域のうち、第1測位点と第2測位点のメッシュ領域以外のメッシュ領域を、補完メッシュ領域という。
なお、日別メッシュ生成手段106では、測位情報を所定単位期間毎に管理しているので、第1測位点と第2測位点が日をまたぐ場合(例えば、基準時刻(例:0時/24時)をまたぐ場合)がある。すなわち、当該単位期間において最初に測位された測位点(以下、「最初測位点」という。)と最後に測位された測位点(以下、「最後測位点」という。)については、組み合わせるべき移動前測位点又は移動後測位点が他の日に属する。
そこで、本実施形態では、第3配分条件として、最初測位点については、対応する移動前測位点が他の日に属するため、基準時刻(例:0時)から最初測位点の測位時刻までの時間を滞在秒数として当該最初測位点のメッシュ領域に配分する。また、最後測位点については、対応する移動後測位点が他の日に属するため、当該最後測位点の測位時刻から基準時刻(例:24時)までの時間を当該最後測位点のメッシュ領域に配分する。なお、第3配分条件では、メッシュ領域に配分する最大時間を設定することができ、その内容に特に限定はないが、本実施形態では最大6時間が設定されている。
図4(A)は、第1配分条件に応じて滞在秒数を配分する様子を説明する図である。同図では、まず、第1測位点と第2測位点との間の測位点間時間(9:40−9:30=10分)から移動時間(5分)を減算して得られる移動時間減算済み時間(5分(300秒))を、第1測位点のメッシュ領域に配分している。次に、第1測位点と第2測位点間のメッシュ領域に滞在秒数を補完すべく、第1測位点と第2測位点との結線上に位置する6つのメッシュ領域に移動時間(5分)を略均等(50秒ずつ)に配分している。
図4(B)は、第2配分条件に応じて滞在秒数を配分する様子を説明する図である。同図では、まず、測位点間距離(10km)と所定の時速(例:30km/時)より第1測位点と第2測位点との間の移動時間(20分)を算出し、測位点間時間(11:30‐9:30=120分)より当該移動時間(20分)を減算して得られる移動時間減算済み時間(100分)を、第1測位点のメッシュ領域に配分している。なお、ここでは、第1測位点と第2測位点間に位置するメッシュ領域への補完は行われないので、移動時間は配分されていない。
図4(C)は、第3配分条件に応じて滞在秒数を配分する様子を説明する図である。同図では、最初測位点(測位時刻7:30)については、最大時間である6時間が配分されており、最後測位点(測位時刻23:30)については、当該測位時刻から0時までの30分が配分されている。
次に、図1に戻り、期間別メッシュ生成手段109について説明する。期間別メッシュ生成手段109は、日別メッシュデータに含まれる測位回数、滞在秒数、滞在日数を所定の集計期間ごとに集計し、またメッシュデータ信頼度の1日あたりの平均値である平均信頼度を求め、各メッシュ領域に、当該集計又は平均により求めた測位回数、滞在秒数、滞在日数、平均信頼度を対応付けた集計期間別メッシュデータ(以下、「期間別メッシュデータ」という。)を生成する。所定の集計期間は、設計や仕様に応じて適宜設定することができ、その期間内容に特に限定はないが、例えば、直近7日、直近30日、直近180月、直近365日などの集計期間を設定することができる。また、複数の集計期間を同時に設定してもよい。
なお、期間別メッシュデータが既に存在する場合は、新たに追加する追加対象日(例:最新測位日)と減算対象日(例:既存集計期間内の最も古い測位日)の日別メッシュデータを日別メッシュDB122より読み出して、メッシュ領域毎に追加対象日の滞在秒数、測位回数、滞在日数を加算する一方、メッシュ領域毎に当該減算対象日の滞在秒数、測位回数、滞在日数を減算する。平均信頼度については、既に存在する平均信頼度に集計期間日数を乗算して期間総計を求め、該期間総計に追加対象日のメッシュデータ信頼度を加算し、減算対象日のメッシュデータ信頼度を減算して、期間総計を更新し、該更新した期間総計に基づいて対象集計期間における1日あたりの平均値を求める。図5は、日別メッシュデータから期間別メッシュデータを生成する様子を説明する図である。同図は、日別メッシュデータM5から生成された期間別メッシュデータM6において、メッシュ領域ごとに滞在秒数、測位回数、滞在日数、平均信頼度が関連付けられている様子を示している。
なお、日別メッシュ生成手段106、期間別メッシュ生成手段109は、測位情報に含まれる測位精度を利用してメッシュデータを作成してもよい。例えば、測位精度に応じて日別メッシュデータを作成する場合、滞在秒数/測位回数集計手段107は、測位精度の高い基礎メッシュデータのみを用いて測位回数、滞在秒数、滞在日数、メッシュデータ信頼度を算出することができる。一方、測位精度に関係なく全ての基礎メッシュデータを用いて日別メッシュデータを作成してもよい。
日常圏設定手段110は、期間別メッシュデータに含まれる測位回数、滞在秒数及び滞在日数のうちの少なくとも2つ以上の組合せが、所定の閾値以上であるメッシュ領域を抽出することより、ユーザの日常圏を設定する。
図6は、期間別メッシュデータより日常圏を設定する様子を説明する図である。同図では、直近30日のメッシュデータM7から「滞在時間が300分以上かつ滞在日数が3日以上」という条件に合致するメッシュ領域を抽出することによって、日常圏を設定する場合や、直近7日のメッシュデータM8から「滞在時間が60分以上かつ滞在日数が2日以上」という条件に合致するメッシュ領域を抽出することによって日常圏を設定する場合を示している。同図に示すように、日常圏には、ユーザの主な行動拠点である自宅、勤務地、通勤経路上の乗換駅路、行きつけの店など様々な場所が含まれ得る。
図1に戻り、グループ処理手段111について説明する。グループ処理手段111は、メッシュデータを作成した複数のユーザの少なくとも一人について、メッシュグループ化処理とグループ別計算処理を実行する。メッシュグループ化処理は、日常圏に含まれるメッシュ領域について、所定の接続関係を満たすメッシュ領域をグループ化する。
携帯端末20のGPS測位精度が低い場合には、実際にユーザが位置するメッシュ領域ではなく、これに近接するメッシュ領域が現在位置として測位される可能性がある。そのため、本実施形態では、所定の接続関係を満たすメッシュ領域をグルーピングして処理することとしている。「所定の接続関係」は、仕様や設計に応じて適宜設定することができ、例えば、メッシュ領域の少なくとも一部が接している状態(異なるメッシュ領域の頂点同士が接する場合、メッシュ領域の辺同士が接する場合、又はその両方などを含む)と定義することができるが、これに限られず、所定数(例えば、1)の非日常圏メッシュが間に挟まれる場合も含めることができる。
なお、グループ化されたメッシュ領域を「メッシュグループ」という。なお、所定の接続関係を満たすメッシュ領域が存在しない場合は、当該メッシュ領域を一メッシュグループとして取り扱う。図7(A)は、メッシュ領域のグループ化を説明するための図である。同図(A)において、メッシュデータM11は、グルーピング前の日常圏を示し、メッシュデータM12は、グルーピング後の日常圏を示す。
グループ別計算処理は、1又は複数のメッシュ領域からなるメッシュグループを少なくとも1つ対象とし、グループ別行動拠点パラメータとして、グループ別滞在日数、グループ別滞在秒数、グループ別測位回数を算出し、各メッシュグループに当該算出したグループ別滞在日数、グループ別滞在病数、グループ別測位回数を対応付けたメッシュグループデータを生成する。
グループ別滞在日数は、集計対象期間における同一メッシュグループ内の全メッシュ領域の滞在日数を総計したもの(但し、重複日は二重加算しない)、又は、集計対象期間における同一メッシュグループ内の全メッシュ領域の滞在日数の中の最大の滞在日数とすることができる。グループ別滞在秒数は、集計対象期間における同一メッシュグループ内の全メッシュ領域の滞在秒数を総計したもの、又は、集計対象期間における同一メッシュグループ内の全メッシュ領域の滞在秒数の中の最大の滞在秒数とすることができる。グループ別測位回数は、集計対象期間における同一メッシュグループ内の全メッシュ領域の測位回数を総計したもの、又は、集計対象期間における同一メッシュグループ内の全メッシュ領域の測位回数の中の最大の測位回数とすることができる。図7(B)は、グループ別滞在秒数とグループ別滞在日数が計算される一例を示している。
次に、行動拠点メッシュグループ特定手段112は、メッシュグループデータを生成したメッシュグループが所定の算出条件を満たすことを条件に、当該メッシュグループの中から行動拠点メッシュグループを特定する。
具体的には、まず、メッシュグループの中に所定の算出条件を満たすメッシュグループがあるか否かを判定し、判定結果が否である場合は、原則、当該ユーザの行動拠点は不明であるとして処理を終了する。所定の算出条件の詳細については、後述する。他方、判定結果が是である場合は、行動拠点メッシュグループの特定処理を実行する。
行動拠点メッシュグループの特定処理は、メッシュグループの中から、グループ別滞在日数、グループ別滞在秒数又はグループ別測位回数が最大のメッシュグループを行動拠点メッシュグループとして特定し、行動拠点メッシュグループに含まれるメッシュ領域のメッシュ番号(メッシュグループ内メッシュ番号)を行動拠点DB125に格納する。例えば、行動拠点が、「自宅」の場合は、「グループ別滞在日数」が最大のメッシュグループを「自宅メッシュグループ」として選択する。他方、行動拠点が、「勤務地」の場合は、「グループ別滞在秒数」が最大のメッシュグループを「勤務地メッシュグループ」として選択する。
勤務日休日特定手段113は、メッシュデータに基づいて、携帯端末20のユーザの勤務日及び休日を特定し、特定した情報を勤務日DB129に格納する。勤務日及び休日の特定方法は様々な方法が存在するが、本実施形態では、(1)行動拠点DB125に記憶されている第1の場所のメッシュグループ(例えば、勤務地メッシュグループ)の情報に基づいて特定する方法、(2)ユーザ情報DB130に格納されている職種の情報に基づいて特定する方法、(3)ユーザの職種を推定して特定する方法について説明する。
まず、特定方法(1)について、第1の場所のメッシュグループとして勤務地メッシュグループを用いてユーザの勤務日及び休日を特定する方法を説明する。勤務日休日特定手段113は、行動拠点が「勤務地」であるメッシュグループ(勤務地メッシュグループ)のデータを行動拠点DB125から取得し、取得した勤務地メッシュグループの情報と日別メッシュDB122に格納された情報とに基づいて、ユーザが勤務地メッシュグループに所定の時間(例えば、4時間)以上滞在した日を特定する。勤務日休日特定手段113は、特定された日を勤務日であると判定し、他の日を休日と判定する。所定の時間以上滞在した日を勤務日としているのは、休日にたまたま短時間、ユーザが勤務地メッシュグループに滞在した日を休日と判定してしまうのを排除するためである。
特定方法(2)では、勤務日休日特定手段113は、ユーザ情報DB130に格納されているユーザの職種の情報と、行動パターンDB128に格納された当該職種に対応する情報と、日別メッシュDB122に格納された情報とに基づいて、ユーザの勤務日及び休日を特定する。詳細には、行動パターンDB128には、ある職種において、勤務時間中に滞在する可能性が高い施設についての情報が格納されている。例えば、職種が「タクシードライバー」である場合、勤務時間中に滞在する可能性が高い施設として、「タクシー乗り場」、「駅前」、「空港」などの情報が格納されている。職種が「営業」である場合は、「オフィスビル」、「小売店」など、客先として考えられる施設の情報が格納されている。職種が「トラックドライバー」である場合、「倉庫」などの施設の情報が格納されている。職種が「バスドライバー」である場合、「バス乗り場」などの施設の情報が格納されている。その他の職種についても、様々な施設の情報が対応付けられて格納されている。勤務日休日特定手段113は、ユーザの職種に対応する行動パターンDB128に示された施設に、ユーザが1日当たりに滞在した時間及び回数が所定の閾値以上である日を勤務日であると判定し、他の日を休日と判定する。なお、施設間の移動スピードを勤務日の判定の考慮に加えることにしてもよい(例えば、タクシードライバーが車速でタクシー乗り場から移動している場合は、勤務日である可能性が高い)。
特定方法(3)では、勤務日休日特定手段113は、まず、日別メッシュDB122(又は期間別メッシュDB123)、施設情報DB127及び行動パターンDB128に格納された情報に基づいて、ユーザの職種を推定する。詳細には、施設情報DB127には、施設の位置情報(例えば、メッシュ番号)と施設の種別情報(例えば、タクシー乗り場、オフィスビル、小売店など)とが対応付けられて格納されている。勤務日休日特定手段113は、ユーザが所定の期間内(例えば、1日)に滞在した施設の滞在時間及び滞在回数の情報を日別メッシュDB122(又は期間別メッシュDB123)及び施設情報DB127から取得する。勤務日休日特定手段113は、取得した滞在時間と滞在回数の情報から算出したスコア(例えば、滞在時間と滞在回数を乗じた値)が高い施設の情報を取得し、この施設と一致度の高い施設に対応する職種の情報を行動パターンDB128から取得する。このように取得された職種がユーザの推定された職種となる。職種の推定方法はこの方法に限定されず、ユーザのメッシュデータから特定される行動パターンと行動パターンDB128とを比較して、行動パターンの類似度の高さから職種を推定する方法であればどのような方法でもよい。勤務日休日特定手段113は、推定された職種に基づいて、前述の特定方法(2)と同様の方法でユーザの勤務日及び休日を判定する。
生活時間帯特定手段114は、基礎メッシュデータDB121、行動拠点DB125及び生活時間帯DB131を参照して、携帯端末20のユーザが、所定のエリアに滞在した時間と、当該所定のエリア間を移動した時間とを算出する。生活時間帯特定手段114は、その後、算出した時間を用いて、ユーザの所定のエリアへの滞在又は所定のエリア間の移動の状態を時系列に表すタイムテーブル(生活時間のタイムテーブル)を生成し、生活時間帯DB131に格納する。また、生活時間帯特定手段114は、特定の日についてのタイムテーブルを生成することも、異なる複数の日についての1日の代表的なタイムテーブルを生成することもできる。ここで、1日の代表的なタイムテーブルとは、異なる複数の日における状態(ユーザが所定のエリアに滞在したという状態、又はユーザが所定のエリア間を移動しているという状態)の遷移を統合して、1日の代表的な状態の遷移を時系列に表したタイムテーブルである。
まず、特定の日についてのタイムテーブルを生成する処理の具体例を説明する。生活時間帯特定手段114は、生活時間のタイムテーブルを生成する対象となるユーザについて、行動拠点DB125から行動拠点のメッシュ番号(又はメッシュグループ内メッシュ番号)の情報を取得する。生活時間帯特定手段114は、取得したメッシュ番号に対応するメッシュについて、基礎メッシュデータDB121から滞在開始時刻及び滞在終了時刻の情報を取得する。生活時間帯特定手段114は、取得した滞在開始時刻及び滞在終了時刻の情報から、対象ユーザの行動拠点の滞在時間及び行動拠点間の移動時間を算出し、生活時間帯DB131を参照して、対象ユーザの状態(滞在又は移動)の変化を時系列に表すデータを生成する。このデータから、所定の時間帯(例えば、15分間)(以下、タイムユニットとする。)を単位として状態の遷移を表すタイムテーブルが生成される。このタイムテーブルの生成の際に、1つのタイムユニットの時間帯に複数の状態が含まれているときは、最も時間の長い状態をこのタイムユニットの状態とするようにタイムテーブルを生成する。なお、タイムユニットの長さが短いほど、正確なタイムテーブルを生成することができるが、タイムユニットの長さは測位精度に応じて決められる。例えば、測位回数が5分に1回である場合、タイムユニットの長さは15分程度が妥当である。
タイムテーブル生成のためのさらに詳細な具体例として、例えば、行動拠点DB125には、行動拠点として「勤務地」(第1の場所)、「自宅」(第2の場所)、及び「よく行く場所」(自宅、勤務地の他に滞在頻度の高い場所)(第3の場所)の情報が格納されている。生活時間帯DB131には、各行動拠点に滞在中の状態として、「自宅滞在」、「勤務地滞在」及び「よく行く場所滞在」などの情報が格納されている。また、生活時間帯DB131には、「自宅」から「勤務地」へ移動中の状態として「出勤」(第1の状態)、「勤務地」から「自宅」へ移動中の状態として「退勤」(第2の状態)などの情報が格納されている。生活時間帯特定手段114は、これらの情報と、算出された行動拠点の滞在時間及び行動拠点間の移動時間とを用いて、各状態に対して時間を割り振り、タイムユニットごとの状態を判定し、当該状態の遷移を時系列に表すタイムテーブルを生成し、生活時間帯DB131に格納する。また、例えば、「6:30」から「6:45」のタイムユニットの間に、5分間自宅に滞在していない時間がある場合であっても、他の状態に比べて「自宅滞在」の状態に最も多く時間が割り振られた場合、そのタイムユニットには、「自宅滞在」と示される。
次に、異なる複数の日についての1日の代表的なタイムテーブルを生成する処理の具体例を説明する。1日の代表的なタイムテーブルの生成方法には様々な方法が存在するが、本実施形態では、(1)異なる複数の日についての複数のタイムテーブル生成し、生成された複数のタイムテーブルを集計して1日の代表的なタイムテーブルとして生成する方法と、(2)複数日分の基礎メッシュデータを用いて1つのタイムテーブルを1日の代表的なタイムテーブルとして生成する方法とについて説明する。
生成方法(1)では、まず、生活時間帯特定手段114は、上述した方法により、異なる複数の日についての複数のタイムテーブルを生成する。生活時間帯特定手段114は、これらの複数のタイムテーブルを集計して、複数の日についての1日の代表的な生活時間のタイムテーブルを生成する。具体的には、生活時間帯特定手段114は、集計の対象となる複数のタイムテーブルを対応するタイムユニットごとに比較し、各タイムユニットにおいて、最も多かった状態をそのタイムユニットの状態とするタイムテーブルを生成する。生成されたタイムテーブルは、1日の代表的なタイムテーブルとして、生活時間帯DB131に格納される。
生成方法(2)については、まず、図8(A)を参照して、複数日分の基礎メッシュデータを用いて算出された滞在時間及び移動時間をタイムユニットごとに各状態に対して割り振る処理の例を説明する。図8(A)には、複数の日について、ユーザが1日に滞在したメッシュが基礎メッシュデータに基づいて時系列に示されている。生活時間帯特定手段114は、図8(A)に示した基礎メッシュデータを各日付について横断的に集計し、各タイムユニットにおける各メッシュの滞在時間の合計時間を算出する。
その後、生活時間帯特定手段114は、算出された各ユニットにおけるメッシュごとの滞在の合計時間と、行動拠点DB125及び生活時間帯DB131に格納されたデータとに基づいて、各タイムユニットに対して「自宅滞在」や「出勤」などの各状態を割り振る。具体的には、各タイムユニットの時間帯で最も滞在時間の長かったメッシュが特定され、特定されたメッシュに対応する行動拠点が行動拠点DB125を参照して特定される。特定された行動拠点からそのタイムユニットに割り振られる状態が生活時間帯DB131(図11(C)を参照して後述)を参照して特定される。また、「出勤」などの移動を表す状態は、前後のタイムユニットに割り振られた状態を考慮して特定される(例えば、前のタイムユニットの状態が「自宅滞在」で後のタイムユニットの状態が「勤務地滞在」であるときは、その間のタイムユニットの状態は「出勤」となる)。
図8(B)は、複数日分(30日間分)の基礎メッシュデータを用いて生成され、生活時間帯DB131に格納された午前中の代表的な生活時間のタイムテーブルの例を示している。この例では、「時間帯」に示されているように、15分間をタイムユニットとするタイムテーブルが示されている。また、同図の「集計時間(S)」には、30日間分の基礎メッシュデータを用いて算出された滞在時間及び移動時間をタイムユニットごとに各状態に対して割り振った秒数が示されている。例えば、「6:30」から「6:45」のタイムユニットの時間帯に「自宅滞在」の状態に対して、「16200」秒が割り振られたことが示されている。これは、30日の期間の間、「6:30」から「6:45」の間に「自宅滞在」の状態であった時間は「16200」秒間であったことを示している。このタイムテーブルに示されている状態は、30日の期間の間、最も多く時間が割り振られた状態を示している。従って、ある日の「6:30」から「6:45」の間に、5分間自宅に滞在していない日があっても、全く自宅に滞在していない日があっても、他の状態に比べて「自宅滞在」の状態に最も多く時間が割り振られた場合、そのタイムユニットには、「自宅滞在」と示される。
また、代表的な生活時間のタイムテーブルは、携帯端末20のユーザが勤務日である日の代表的な生活時間のタイムテーブル、又は休日である日の代表的な生活時間のタイムテーブルを生成してもよい。具体的には、生活時間帯特定手段114は、勤務日休日特定手段113によって勤務日DB129に格納されたユーザの勤務日又は休日の情報を用いて、勤務日についての代表的な生活時間のタイムテーブル、又は休日についての代表的な生活時間のタイムテーブルを生成することができる。
なお、本実施形態では、生活時間帯特定手段114は、行動拠点DB125に示された行動拠点を単位とするエリアに滞在した時間、及び当該エリア間の移動時間を算出し、タイムテーブルを生成しているが、エリアの単位はこれに限定されない。測位精度に応じて様々な単位のエリアを設定して、当該エリアに滞在した時間及び当該エリア間の移動時間を算出して、タイムテーブルを生成することができる。例えば、エリアは、ユーザの自宅を含む自宅エリア、ユーザの勤務地を含む勤務地エリア、又は他の滞在頻度の高い場所を含む他の高頻度滞在エリアの少なくともいずれかを任意の広さで設定することができる。
以上のようにして生成されたユーザの生活時間のタイムテーブルは、例えば、ユーザへの情報配信のために用いることができる。具体的には、生活時間帯特定手段114は、生活時間帯DB131に格納されたタイムテーブルを参照して、配信する情報がいつの時間帯に配信されればユーザにとって有益であるかを特定し、当該特定された時間帯に通信手段102介して情報を配信する。すなわち、情報の内容と、タイムテーブルに示された時間帯とに応じて、情報の配信時間が決定される。例えば、ユーザの出勤の時間帯に通勤経路の路線情報を配信してもよい。昼の時間帯の勤務中外出の時間帯にランチ情報を配信してもよい。また、勤務外の外出の時間帯にバーゲン情報を配信してもよい。
次に、各データベースの構造について説明する。なお、各データベースは、二次記憶装置だけでなくメモリ上に一時的にデータを保持する場合も含む。
測位情報DB120は、携帯端末20から送信される測位情報を格納する。図9(A)は、そのデータ構造の一例を示す図である。同図によれば、測位情報DB120には、「測位時刻」、「ユーザID」、「緯度」、「経度」、「測位精度」などのデータが測位情報の履歴として対応付けて格納されている。
基礎メッシュデータDB121は、基礎メッシュデータ生成手段104が生成した基礎メッシュデータを格納する。図9(B)は、そのデータ構造の一例を示す図である。同図によれば、基礎メッシュデータDB121には、「ユーザID」、「測位日」、「メッシュ番号」、「滞在開始時刻」、「滞在終了時刻」、「測位精度」などのデータが対応付けて格納されている。なお、「メッシュ番号」には、メッシュ領域を一意的に識別する識別情報が格納される。
日別メッシュDB122は、日別メッシュ生成手段106が生成した日別メッシュデータを格納する。図9(C)は、そのデータ構造の一例を示す図である。同図によれば、日別メッシュDB122には、「ユーザID」、「測位日」、「メッシュ番号」、「滞在時間」、「測位回数」、「メッシュデータ信頼度」などのデータが対応付けて格納されている。
期間別メッシュDB123は、期間別メッシュ生成手段109が生成した期間別メッシュデータを格納する。図10(A)は、そのデータ構造の一例を示す図である。同図によれば、期間別メッシュDB123には、「ユーザID」、「対象期間」、「メッシュ番号」、「滞在時間合計」、「測位回数合計」、「測位日数合計」、「平均信頼度」などのデータが対応付けて格納されている。
メッシュグループDB126は、グループ処理手段111が生成したメッシュグループデータを格納する。図10(D)は、そのデータ構造の一例を示す図である。同図によれば、メッシュグループDB126には、「ユーザID」、「対象期間」、「メッシュグループ内メッシュ番号」、「滞在時間合計」、「測位回数合計」、「測位日数合計」などのデータが対応付けて格納されている。
日常圏DB124は、日常圏設定に関するデータを格納するものであり、具体的には、日常圏設定の際に使用する日常圏条件と、設定された日常圏のデータとを含む。
図10(B)は、日常圏DB124に含まれる日常圏条件の一例を示す図である。日常圏条件には、仕様設計に応じた内容を設定することができ、特に限定はないが、同図では、日常圏の種類と条件が対応付けて格納されている。具体的には、日常圏Aには、「対象集計期間」、「滞在日数」、「滞在分数」が設定され、日常圏Bには、「対象集計期間」、「測位日数」、「滞在分数」及び「測位回数」が設定され、日常圏Cには、「対象集計期間」と「滞在日数」が設定されている。さらに、各項目については、日常圏の種類ごとに任意の期間と、閾値としての日数、時間、回数が設定されている。同図に示すように、日常圏の条件は、抽出したい日常圏の種類に応じて設定することができる。例えば、滞在日数を重視して滞在秒数や測位回数を考慮しない場合は、通勤経路を主とした日常圏を特定することが可能であり、滞在秒数を重視して滞在日数を考慮しない場合は、訪れる回数は少ないが長居する場所(例:実家)を含む日常圏などを特定することが可能である。また、対象集計期間に長期間を設定すれば、長期旅行や出張などにいった場合に日常圏がなくなることを防止することができる一方、対象集計期間に短期間を設定すれば、日常圏を容易に特定することが可能である。
図10(C)は、日常圏DB124に含まれるユーザの日常圏の一例を示す図である。同図では、ユーザIDごとに、「日常圏の種類」と「メッシュ番号」が対応づけて格納されている。同図によれば、日常圏の種類によって、設定された日常圏のメッシュ番号が異なることがわかる。
行動拠点DB125は、行動拠点検出処理に関するデータを格納するものであり、図11(A)、(B)に示すように、メッシュグループ抽出条件を格納する抽出条件テーブルと、ユーザ毎に特定された行動拠点に関するデータを格納する行動拠点データテーブルとを含む。メッシュグループ抽出条件としては、行動拠点の特性に応じた条件を設定することができ、図11(A)では、一例として、自宅メッシュグループの場合は、「グループ別滞在日数が所定日数(n日)以上であり、かつ、グループ別滞在秒数が所定秒数(m秒)以上である」ことが設定され、勤務地メッシュグループの場合は、「グループ別滞在秒数が所定日数(x秒数)以上であり、かつ、グループ別滞在日数が所定日数(y日)以上である」ことが設定されている。nは最低在宅日数(例:nは20日)、mは最低在宅時間(例:mは432000秒=15日×8時間×60分×60秒)、xは最低勤務日数(例:xは234000秒=13日×5時間×60分×60秒)、yは最低勤務時間(例:yは13日)である。
行動拠点データテーブルには、図11(B)に示すように、「ユーザID」、「行動拠点の種類」、当該行動拠点の「メッシュ番号」、当該行動拠点を特定した「日付」、当該行動拠点に対応する「メッシュグループ内メッシュ番号」などのデータが、行動拠点のデータとして格納される。
施設情報DB127は、施設の位置に関するデータを格納する。図12(A)は、施設情報DB127のデータ構造の一例を示す図である。同図によれば、施設情報DB127には、「施設ID」、「メッシュ番号」、「施設種別」、「名称」、「住所」などのデータが対応付けられて格納されている。なお、「メッシュ番号」は、施設が位置するメッシュ領域を一意的に識別する情報である。
行動パターンDB128は、職種ごとに、勤務時間中に滞在する可能性が高い施設に関するデータを行動パターンのデータとして格納する。図12(B)は、行動パターンDB128のデータ構造の一例を示す図である。同図によれば、行動パターンDB128には、「パターンID」、「職種」、「施設種別1」、「施設種別2」、「移動速度」などのデータが対応付けられて格納されている。「パターンID」は、行動パターンを一意的に識別する情報である。同じ職種であっても、複数の行動パターンが存在することがあるため(例えば、営業であっても、どの業種に属するかによって行動パターンは異なる。)、行動パターンDB128には、1つの職種について、複数の行動パターンのデータを格納することができる。
勤務日DB129は、携帯端末20のユーザの勤務日及び休日についてのデータを格納する。図12(C)は、勤務日DB129のデータ構造の一例を示す図である。同図によれば、勤務日DB129には、「ユーザID]、「日付」、「労働時間」、「勤務種別」などのデータが対応付けられて格納されている。この例では、勤務日DB129には、1日ごとに、その日がユーザの勤務日であったか、休日であったかのデータが格納されている。労働時間が所定の時間(例えば、4時間)以上であった日は、勤務日として、他の日は休日としてデータが格納される。なお、同図に示すデータをユーザごとに集計して、そのユーザの定休日、週休数などの勤務日に関するデータを特定してそのデータを勤務日DB129に格納することもできる。例えば、曜日ごとに休日の数を集計し、10週中8回以上休日であった曜日を定休日として特定することができる。
ユーザ情報DB130は、予め情報処理システム10に入力された携帯端末20のユーザに関するデータを格納する。図12(D)は、ユーザ情報DB130のデータ構造の一例を示す図である。同図によれば、ユーザ情報DB130には、「ユーザID」、「名前」、「電話番号」、「職種」、「メールアドレス」などのデータが対応付けられて格納されている。
生活時間帯DB131は、携帯端末20のユーザの生活時間帯を特定するためのマスタテーブルのデータ、及び特定された生活時間のタイムテーブルのデータを格納する。図11(C)は、生活時間帯を特定するためのマスタテーブルの一例を示す図である。同図によれば、このマスタテーブルには、「状態ID」、「状態」、「移動前エリア」、「移動後エリア」などのデータが対応付けられて格納されている。このマスタテーブルによれば、所定のエリアに滞在しているときに、又は所定のエリア間を移動しているときに、ユーザがどのような状態であるかを特定することができる。また、図8(A)は、生活時間のタイムテーブルのデータの一例を示す図である。同図についての説明は前述したとおりである。
[2.携帯端末の構成]
図1に戻り、携帯端末20について説明する。携帯端末20は、例えば、携帯電話機、PDA、パーソナルコンピュータなどのGPSを利用して現在位置を測位した測位情報を所定時間間隔でアップロードする機能を備えた従来の端末装置を適用することができる。なお、図1では1つの携帯端末20を記載しているが、利用形態に応じて複数の携帯端末20を情報処理システム10と接続することができる。
図13に示すように、携帯端末20は、主制御手段201、通信手段202、表示手段203、操作手段204、記憶手段205、現在位置測位手段206、測位情報送信手段207などの各種機能実現手段をおもに備える。
主制御手段201は、図示しないCPU、ROMやRAM等のメモリを含むプロセッサで構成されており、ROMに記憶された所定のプログラムをCPUが実行することにより携帯端末20の各部の動作を制御する。通信手段202は、ネットワークNを介して情報処理システム10との間で各種情報を送受信するためのインタフェースである。表示手段203は、文字や画像等の情報を表示するディスプレイであり、操作手段204は、ユーザからの操作指示を受け付けるボタンやタッチパネルである。また、記憶手段205は、各種プログラムやデータを記憶する記憶装置としてのメモリである。
現在位置測位手段206は、例えば、GPS受信機を備え、GPS衛星信号を所定の受信間隔で受信し処理することによって携帯端末20の現在位置(緯度・経度)を測位する。
測位情報送信手段207は、現在位置測位手段206が測位した測位点、測位時刻、測位精度と、当該携帯端末20を保有するユーザのユーザIDとを含む測位情報を、情報処理システム10へ送信する。なお、測位情報の送信は、仕様・設計に応じて適宜設定することができるが、上述したように、本実施形態では、ユーザが移動している場合には、所定の送信間隔にしたがって送信するように構成されている。ユーザが移動しているか否かは、例えば図示しない加速度センサを用いて従来技術を適用することにより判断することができる。
ネットワークNは、情報処理システム10と携帯端末20との間で情報を送受信するための通信回線である。例えば、インターネット、LAN、専用線、パケット通信網、電話回線、企業内ネットワーク、その他の通信回線、それらの組み合わせ等のいずれであってもよく、有線であるか無線であるかを問わない。
[3.情報処理システムの動作]
次に、上記のように構成される情報処理システム10の動作の概要について、図14及び図15のフローチャートを参照しながら説明する。なお、後述の各処理ステップは、処理内容に矛盾を生じない範囲で、任意に順番を変更して又は並列に実行することができるとともに、各処理ステップ間に他のステップを追加してもよい。また、便宜上1ステップとして記載されているステップは、複数ステップに分けて実行することができる一方、便宜上複数ステップに分けて記載されているものは、1ステップとして把握することができる。
[3−1.勤務日特定処理]
図14を参照して、勤務日特定処理について説明する。図14は、勤務日特定処理の全体の流れの一例を示すフローチャートである。この処理は、携帯端末20のユーザの勤務日又は休日を特定し、特定したデータを勤務日DB129に格納する処理である。
まず、ステップS101において、勤務日休日特定手段113は、行動拠点DB125を参照して、対象ユーザについて、勤務地メッシュグループ(第1の場所のメッシュグループ)のデータが格納されているかを判定する。
勤務地メッシュグループのデータが格納されている場合、ステップS102において、勤務日休日特定手段113は、日別メッシュDB122を参照して各日付について、対象ユーザが勤務地メッシュグループに滞在した1日当たりの時間を特定する。
ステップS103において、勤務日休日特定手段113は、勤務地メッシュグループに滞在した1日当たりの時間が所定の時間(例えば4時間)以上である日を勤務日として特定する。すなわち、勤務日休日特定手段113は、測位情報に基づいて、携帯端末20のユーザの勤務地として指定されたエリアに、当該ユーザが滞在した1日当たりの時間が所定の時間以上である日を勤務日として特定する。勤務日であるかの判断に用いるこの時間の閾値は、任意の値を設定することができる。
ステップS104において、勤務日休日特定手段113は、勤務日として特定された日以外の日を休日として特定し、特定したデータを勤務日DB129に格納する。図12(C)は、勤務日DB129に格納されたデータの例を示している。また、上述したとおり、勤務日休日特定手段113は、データをユーザごとに集計して、そのユーザの定休日、週休数などの勤務日に関するデータを特定してそのデータを勤務日DB129に格納することもできる。
また、ステップS101において、勤務地メッシュグループのデータが格納されていないと判定された場合、ステップS105において、行動拠点メッシュグループ特定手段112は、対象ユーザの勤務地メッシュグループを特定する処理を行う。処理の詳細は、上述したとおりである。すなわち、行動拠点メッシュグループ特定手段112は、あるエリアに対する携帯端末20のユーザの滞在日数及び1日当たりの滞在時間に基づいて、当該ユーザの勤務地を行動拠点メッシュグループとして特定する。
次に、ステップS106において、勤務日休日特定手段113は、ステップS105で勤務地メッシュグループが特定されたかを判定する。特定された場合、処理はステップS102へ進み、特定されなかった場合、処理はステップS107へ進む。
ステップS107において、勤務日休日特定手段113は、ユーザ情報DB130を参照して、対象ユーザの職種のデータが格納されているかを判定する。格納されている場合、処理はステップS108へ進み、格納されていない場合、処理はS110へ進む。
ステップS108において、勤務日休日特定手段113は、対象ユーザについて、ユーザ情報DB130から職種の情報を取得し、又はステップS110で推定された職種の情報を取得する。勤務日休日特定手段113は、当該職種に対応する行動パターンのデータを行動パターンDB128から取得し、当該取得した行動パターンのデータを用いて、日別メッシュDB122のデータを解析する。具体的には、勤務日休日特定手段113は、行動パターンのデータに示された施設に、ユーザが1日当たりに滞在した時間及び回数を特定する。すなわち、本実施形態において、行動パターンのデータに示された施設は、ユーザの職業情報に基づいて定められたエリアとなる。さらに、このステップにおいて、勤務日休日特定手段113は、基礎メッシュデータDB121を参照して、ユーザが施設間を移動したスピードが行動パターンのデータに示された移動速度以上である移動回数を特定してもよい。
ステップS109において、勤務日休日特定手段113は、ステップS108の処理結果に基づいて、行動パターンのデータに示された複数の施設にユーザが1日当たりに滞在した合計滞在時間が所定の閾値以上である日を勤務日であると判定する。もしくは、勤務日休日特定手段113は、予め定めた基準に基づいて、施設に滞在した時間及び回数に対してスコアを算出し(例えば、合計滞在時間と回数を乗算する、または、他の施設における滞在時間及び回数の平均値との差分を算出する、など)、算出されたスコアが所定の閾値以上である日をユーザの勤務日と判定してもよい。また、ステップS108で特定された移動回数が所定の閾値以上であることを勤務日であると判定するための条件として加えてもよい。
また、ステップS107において、対象ユーザの職種データが格納されていなかった場合、ステップS110において、勤務日休日特定手段113は、まず、ユーザが所定の期間内(例えば、1日)に滞在した施設の滞在時間及び滞在回数の情報を日別メッシュDB122(又は期間別メッシュDB123)及び施設情報DB127から取得する。勤務日休日特定手段113は、取得した滞在時間と滞在回数の情報から算出したスコア(例えば、滞在時間と滞在回数を乗じた値)が高い施設の情報を取得し、この施設と一致度の高い施設に対応する職種の情報を行動パターンDB128から取得する。勤務日休日特定手段113は、このように取得した職種をユーザの職種として推定する。その後、処理はステップS108へ進み、ユーザの行動を解析する。
以上のように本実施形態によれば、まず、情報システム20内のエリア記憶手段(行動拠点DB125、施設情報DB127、行動パターンDB128等)は、携帯端末20のユーザの勤務日又は休日を特定するために用いるエリアの情報を記憶している。情報処理システム20は、測位情報に基づいて、エリア記憶手段に記憶された情報が示すエリアにユーザが所定の時間以上滞在した日を特定し、当該特定された日に応じて前記ユーザの勤務日又は休日を特定する。その結果、携帯端末20のユーザの勤務日及び休日を特定することができ、GPSを利用したサービスにおいて、携帯端末20のユーザが勤務日であるか休日であるかを考慮して、サービスを提供することができる。
[3−2.生活時間帯特定処理]
図15を参照して、生活時間帯特定処理について説明する。図15は、生活時間帯特定処理の全体の流れの一例を示すフローチャートである。この処理は、携帯端末20のユーザが所定のエリアに滞在した時間と、ユーザが所定のエリア間を移動した時間とを算出し、算出された時間に基づいて、ユーザの生活時間のタイムテーブルを生成する処理である。ここでは、上述した1日の代表的なタイムテーブルの生成方法(1)(異なる複数の日についての複数のタイムテーブル生成し、生成された複数のタイムテーブルを集計して1日の代表的なタイムテーブルとして生成する方法)を例にして説明する。
まず、ステップS201において、生活時間帯特定手段114は、生活時間のタイムテーブルを生成する対象となるユーザについて、行動拠点DB125から行動拠点のメッシュ番号(又はメッシュグループ内メッシュ番号)の情報を取得する。生活時間帯特定手段114は、取得したメッシュ番号に対応するメッシュについて、基礎メッシュデータDB121から滞在開始時刻及び滞在終了時刻の情報を取得する。生活時間帯特定手段114は、取得した滞在開始時刻及び滞在終了時刻の情報を用いて、対象ユーザが行動拠点(第1の行動拠点)に滞在した時間、及び行動拠点の滞在の終了後から次の行動拠点(第2の行動拠点)への滞在の開始までの時間(行動拠点間の移動時間)を算出する。すなわち、生活時間帯特定手段114は、測位情報に基づいて、携帯端末20のユーザが所定のエリアに滞在した時間と、ユーザが所定のエリア間を移動した時間とを算出する。
ステップS202において、生活時間帯特定手段114は、生活時間帯DB131を参照して、図11(C)に示すような各状態に対して、ステップS201で算出された時間を上述のタイムユニットに割り振ることで各タイムユニットに対する状態を判定し、特定の日付についての1日のタイムテーブルを生成し、生活時間帯DB131に格納する。
具体的には、生活時間帯特定手段114は、生活時間のタイムテーブルを生成する対象となるユーザについて、行動拠点DB125から行動拠点のメッシュ番号(又はメッシュグループ内メッシュ番号)の情報を取得する。生活時間帯特定手段114は、取得したメッシュ番号に対応するメッシュについて、基礎メッシュデータDB121から滞在開始時刻及び滞在終了時刻の情報を取得する。生活時間帯特定手段114は、取得した滞在開始時刻及び滞在終了時刻の情報から、対象ユーザの行動拠点の滞在時間及び行動拠点間の移動時間を算出する。生活時間帯特定手段114は、生活時間帯DB131を参照して、状態(滞在又は移動)の変化を時系列に表すデータを生成する。このデータから、タイムユニットごとの状態の遷移を表すタイムテーブルが生成される。このタイムテーブルの生成の際に、1つのタイムユニットの時間帯に複数の状態が含まれているときは、最も時間の長い状態をこのタイムユニットの状態として判定し、タイムテーブルを生成する。
ステップS203において、生活時間帯特定手段114は、ステップS202で異なる複数の日について生成された複数のタイムテーブルを集計して、複数の日についての代表的な生活時間のタイムテーブルを生成し、生活時間帯DB131に格納する。具体的には、生活時間帯特定手段114は、ステップS202で生成された複数のタイムテーブルをタイムユニットごとに比較し、各タイムユニットにおいて、最も多かった状態をそのタイムユニットの状態とするタイムテーブルを生成する。
なお、図15の例では、異なる複数の日についての複数のタイムテーブル生成し、生成された複数のタイムテーブルを集計して1日の代表的なタイムテーブルとして生成する方法について説明したが、上述したように、1日の代表的なタイムテーブルを生成する方法はこれに限定されない。例えば、生成方法(2)として上述したように、複数日分の基礎メッシュデータを用いて1つのタイムテーブルを1日の代表的なタイムテーブルとして生成することも可能である。
また、生活時間帯特定手段114は、勤務日DB129に格納されたユーザの勤務日又は休日の情報を用いて、勤務日についての代表的な生活時間のタイムテーブル、又は休日についての代表的な生活時間のタイムテーブルを生成してもよい。このようにタイムテーブルを生成することによって、よりユーザの生活実態に沿った方法で、代表的な生活時間のタイムテーブルを生成することができる。
なお、このようなタイムテーブルを生成する場合、勤務日又は休日であることを考慮した処理を行ってもよい。例えば、休日に「勤務地滞在」や「出勤」などの状態は取りえない。従って、ユーザが長時間勤務地エリアに滞在していたときであっても、休日の場合は、「勤務地滞在」や「出勤」などの状態は表れないようにタイムテーブルを生成してもよい。
以上のように、本実施形態によれば、端末装置20のユーザの生活時間帯を特定することができる。その結果、GPSを利用したサービスにおいて、携帯端末20のユーザが勤務日であるか休日であるかを考慮して、ユーザにとってより有益なサービスを提供できる。
なお、生活時間帯DB131に格納されたタイムテーブルを携帯端末20が情報処理システム10からダウンロードし、携帯端末20は、タイムテーブルに示された時間帯(すなわち、生活時間帯特定手段114によって時間帯ごとに判定された状態)に応じた動作を行うこととしてもよい。例えば、携帯端末20は、通勤の時間帯が開始する1時間前に、目覚ましのためのアラームを鳴らす動作を行うことができる。また、携帯端末20は、通勤の時間帯に通勤経路の情報を表示する動作を行ってもよい。このような処理を行うことによって、携帯端末20は、よりユーザビリティの高い動作を行うことができる。
[その他の実施形態]
本発明は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。