【文献】
長尾光悦他,"GPSログからの周遊型観光行動情報の抽出",情報処理学会研究報告,2005年 8月 2日,Vol.2005 No.78,pp.23-28
【文献】
山田直治他,"屋外行動支援のためのGPS搭載携帯電話を用いた移動経路の逐次的精練手法",情報処理学会論文誌[CD−ROM],2011年 6月15日,Vol.52,No.6,pp.1951-1967
(58)【調査した分野】(Int.Cl.,DB名)
前記行動判別手段は、一のグループに含まれる位置情報から、当該グループに関連するエリアを求め、当該エリアに基づいて、前記移動又は滞在の場所を判別することを特徴とする請求項4に記載の情報処理システム。
【発明を実施するための形態】
【0011】
以下に本発明の実施形態を説明する。以下の説明及び参照する図面の記載において、同一又は類似の構成には、それぞれ同一又は類似の符号が付されている。
(実施形態)
【0012】
図1乃至
図13は、本発明の実施形態を説明するための図である。以下、これらの図を参照しながら、以下の流れに沿って本実施形態を説明する。まず「1」で実施形態全体の概要を示す。その上で、「2」でシステム全体の構成を、「3」でソフトウェア構成を、「4」でデータベースの構成を説明する。「5」では、処理の流れを説明する。最後に、「6」以降で、本実施形態に係る効果や他の実施形態等を説明する。
【0013】
(1 概要)
(1.1 システム概要)
図1は、情報処理システムである情報処理サーバ100が含まれる通信システム1の概略構成を示す図である。
図1に示すように、通信システム1は、情報処理サーバ100、携帯端末200(以下、携帯端末200A及び200B等を総称して携帯端末200と呼ぶ。)を含んでいる。同図中の実線矢印は、携帯端末200Aないし200Bの移動を表している。情報処理サーバ100及び携帯端末200は、それぞれ公衆網Nに接続されている。
【0014】
ここで、通信システム1は、情報処理サーバ100が携帯端末200から位置情報を受信し、この位置情報の履歴情報に基づいて、各携帯端末200を保有するユーザのトリップデータを作成し、レポートRを出力するシステムである。ここで、トリップデータとは、各携帯端末200を保有するユーザの行動履歴に係る情報であり、ユーザの移動に係る情報または滞在に係る情報のいずれかを少なくとも含むデータである。
【0015】
携帯端末200は、図示しないユーザが持ち運び自在な可搬性の情報処理装置である。携帯端末200はそれぞれ、例えばGPS(Global Positioning System)等により断続的に位置情報を取得して、情報処理サーバ100へ送信することが可能である。携帯端末200の具体例としては、例えば携帯電話(いわゆるスマートフォンであるか、フィーチャーフォンであるかは問わない)、タブレット、ノートPC(Personal Computer)、PDA(Personal Data Assistance)等が考えられるが、これらに限られるものではない。
【0016】
ここで、携帯端末200が情報処理サーバ100に位置情報を送信する間隔としては、例えば5分間隔や10分間隔等が考えられるが、これに限られるものではない。また、間隔が定期的であるか不定期であるかを問わない。
【0017】
情報処理サーバ100は、携帯端末200から位置情報を受信し、当該位置情報の履歴情報に基づいて、各携帯端末200を保有するユーザのトリップデータを作成し、レポートRとして出力する。尚、レポートRの出力方法としては、例えば電子データとして記憶媒体に記録したり、通信により他の情報処理装置に送信したり、或いは印刷したり、表示装置に表示したりといった形態が考えられる。
【0018】
本実施例では、ユーザのトリップデータを作成する際に、情報処理サーバ100は、ユーザが保有する携帯端末200の位置履歴情報を解析して、ユーザの行動履歴を、ある場所に滞在していたことを示す「滞在」と、ある場所から別の場所に移動していたことを示す「移動」とに切り分ける。この切り分けは、まず「滞在」を判別した後、ある滞在と次の滞在の間を「移動」として判別する手法と、それとは逆に、まず「移動」を判別した後、ある移動と次の移動の間を「滞在」として判別する手法等を採用可能である。なお、滞在の場所とは、特定の1点に限定されるものではなく、平面的ないし空間的に一定の広がりをもった所定範囲のエリアを含むものである。本実施例においては、前者の、まず「滞在」を判別し、その後、滞在と滞在の間を「移動」として判別するする手法について、
図2を参照しながら説明する。
【0019】
(1.2 データ抽出の概要)
図2は、情報処理サーバ100による、携帯端末200を保有するユーザのトリップデータを作成する際の、データの抽出方法を説明するための図である。同図において、「×」は、ある携帯端末200について測位された位置を示し、時刻は測位された時刻を示している。
【0020】
同図に示すように、情報処理サーバ100は、ある携帯端末200についての位置履歴情報を解析し、位置情報とそれに関連する時刻情報とに基づいて、複数のグループを形成する。グループ化処理の詳細は後述するが、原則として、時間的に連続する複数の位置情報について、これらが所定の関係にある場合に、これら複数の位置情報をグループ化する。
図2には、4つのグループ21,22,23,24が形成された実施例が例示されている。例えば、時間的に連続する複数の位置情報について、位置情報を含む所定形状の領域が重複する場合にグループ化することが考えられる。また、時間的に連続する2つの位置情報によって表される2地点間の距離ないし速度に基づいてグループ化することが考えられる。次に、グループ化された各グループ毎に、グループに含まれる位置情報と、必要に応じてその前後の位置情報ないし前後のグループとの関係とに基づいて、当該グループに対応するエリアに携帯端末200が「滞在」していたか否かを判別する。判別処理の一例として、グループ毎に携帯端末200の滞在時間を算出し、所定の閾値よりも大きい場合には、滞在であるものと判別することが考えられる。例えば、閾値を15分と設定した場合には、あるグループ内に属する位置情報の測位時刻の差分が15分より大きいとき、そのグループに対応するエリアにユーザが「滞在」していたものと判別する。
【0021】
図2に示す例においては、グループ21に属する位置情報の測位時刻の差分が1時間であり、15分より大きいので、「滞在」であるものと判別される。一方、グループ22に属する位置情報の測位時刻の差分は10分であり、15分以下であるので、「滞在」であるとは判別されない。同じように、グループ23は、測位時刻の差分が0であるので、「滞在」であるとは判別されない。グループ24は、測位時刻の差分が1時間20分であるので、「滞在」と判別される。このようにして、グループ21について、8時00分から9時00分までエリアAに滞在し、グループ24について、9時40分から11時00分までエリアBに滞在したものと判別される。その後、2つの滞在の間を、「移動」と判別する。すなわち、9時00分から9時40分までエリアAからエリアBに向かって「移動」していたものと判別される。なお、グループに位置情報が1点しか属していない場合や、グループに属する位置情報の測位時刻の差分が所定値以下の場合でも、前後の位置情報ないし前後のグループとの関係を見て、当該グループの滞在時間が所定値以上であると推定される場合には、そのグループを「滞在」と判別してもよい。
【0022】
(2 システム構成)
以下、
図3を参照しながら、本実施形態に係る通信システム1の機能構成を説明する。
図3は、本実施形態に係る通信システム1の機能構成を示す図である。前述の通り、本実施形態に係る通信システム1は、情報処理サーバ100及び携帯端末200を含む。以下、これらの構成について説明する。
【0023】
情報処理サーバ100は、前述の通り、携帯端末200から位置情報を受信すると共に、当該位置情報とその測位時刻の情報に基づいて、滞在と移動とを含むユーザの行動履歴を判別することで、ユーザのトリップデータにかかるレポートRを作成する。
【0024】
情報処理サーバ100は、制御部110、通信部120、及びデータベース(DB)140を含む。尚、情報処理サーバ100の機能は、2以上の情報処理装置(サーバも含む)を組み合わせた情報処理システムとして実現することも可能である。
【0025】
制御部110は、演算装置であるCPU(Central Processing Unit)111及びメモリ113を含む。制御部110では、メモリ113に記憶されたプログラム(ソフトウェア)を格納し、CPU111上で当該プログラムを実行することにより、情報処理サーバ100における各種処理を制御する。例えば、通信部120で受信した携帯端末200の位置情報を位置履歴情報141としてDB140に記録したり、位置履歴情報を分析して何時何分から何時何分までどこに滞在していたかを判別したり、ユーザの滞在と移動に関するレポートRを作成したりといった処理を行う。これらの機能処理については、
図4等を参照しながら後述する。
通信部120は、携帯端末200と通信するための通信インタフェースである。通信部120は、例えば、携帯端末200からの位置情報の受信等を行う。
【0026】
DB140は、例えば記憶装置上に構成される情報管理モジュールであり、位置履歴情報141等を記憶する。ここで、位置履歴情報141は、それぞれの携帯端末200から受信した緯度や経度にかかる位置情報が、時刻や端末ID、測位精度等と対応付けて管理される情報である。位置履歴情報141の具体例は、
図5を参照しながら後述する。
【0027】
次に、携帯端末200の構成を説明する。携帯端末200は、
図3に示すように、主制御部210、無線通信部220、入力部230、表示部240、及びセンサ250を含む。
【0028】
主制御部210は、携帯端末200における各種処理を制御し、CPU211及びメモリ213(揮発性メモリ及び不揮発性メモリを含む。)を含む。主制御部210では、メモリ213の記憶領域に各種アプリケーション等のプログラムを格納したり、CPU211が当該アプリケーション等のプログラムを実行したりすることにより、携帯端末200が有する各種機能を実現することができる。より具体的には、主制御部210は、GPS受信機253により取得できる位置情報を、無線通信部220を用いて例えば5分間隔等で定期的に情報処理サーバ100へ送信する。
【0029】
無線通信部220は、公衆網Nを介して他の情報処理装置との間でデータを送受信することができる。先述の通り、位置情報の情報処理サーバ100への送信は無線通信部220により行われる。
【0030】
入力部230は、携帯端末200に対するユーザからの入力を受け付ける装置であり、入力キーやタッチパネル等を含む。尚、入力部230は、ユーザからの音声を受け付けて入力情報として主制御部210へ出力する機能を有しても良い。表示部240は、各種情報を表示してユーザに提示するための、例えばディスプレイ装置である。
【0031】
センサ250は、携帯端末200のユーザの移動状態に応じて変化する検出信号等を出力し、例えば、加速度センサ251やGPS受信機253を含む。具体的には、センサ250から出力される検出信号には、加速度センサ251から出力される加速度を示す加速度情報や、GPS受信機253から出力される携帯端末200の現在位置を示す位置情報が含まれる。尚、位置情報には、高度に係る情報を含んでも良い。
【0032】
(3 ソフトウェアの機能)
次に、
図4を参照しながら、情報処理サーバ100のソフトウェアの機能構成を説明する。
図4は、情報処理サーバ100の制御部110上で動作するソフトウェアの構成を模式的に示す機能ブロック図である。
制御部110で動作するソフトウェアは、位置情報受信部115、データ抽出部117、及びデータ出力部119を含む。
【0033】
位置情報受信部115は、各携帯端末200から、それぞれの携帯端末200が取得した位置情報を定期的に(断続的に)通信部120を介して受信し、それをDB140上の位置履歴情報141として登録する。尚、位置情報の取得方法については、位置情報受信部115が携帯端末200に位置情報の送信要求を出し、それに対する応答として携帯端末200が位置情報を送信する形であるか、若しくは携帯端末200が自発的に(情報処理サーバ100側からの要求なしに)位置情報を送信する形であるかは問わない。本実施形態では、携帯端末200が自発的に位置情報を送信するものとして説明する。
【0034】
データ抽出部117は、データ出力部119が作成するレポートRを生成する際の基となるトリップデータを、位置履歴情報141から抽出する。データ抽出部117はデータ抽出に際し、読込部117AによりDB140から位置履歴情報141を読込んだ上で、グループ化処理部117Bにより当該位置履歴情報141に含まれる位置情報をグループに分けるグループ化処理を行い、各グループに対して行動判別部117Cを用いて、滞在と移動とを含むユーザの行動履歴を判別することにより、トリップデータを抽出する。
【0035】
行動判別部117Cは、携帯端末200から受信した位置情報に基づいて、各携帯端末200を保有するユーザの行動を分析し、いつからいつまでどこに滞在し、いつからいつまでどこからどこに移動したか等を判別する。より具体的な処理は後述する。
【0036】
なお、グループ化処理部117Bによる位置情報のグループ化処理、及び行動判別部117Cによる行動履歴の判別処理は、実装上、1つのモジュールで行っても、複数のモジュールで行っても構わない。
【0037】
データ出力部119は、データ抽出部117により抽出された、ユーザのトリップデータを集計して、例えばレポートR等の出力データを作成する。このとき、例えばユーザから統計データの対象期間が指定されている場合には、データ抽出部117は、位置履歴情報141から当該期間の位置情報を抽出した上で、上述の行動履歴判別処理を行ってトリップデータを作成する。
【0038】
なお、
図3や
図4には明示的に示していないが、データ出力部119が作成するトリップデータの対象期間(例えば、1月から12月までの1年間、1月の1ヶ月間、平日、休日、日毎の推移、等)の指定等を入力するための入力インタフェースや入力処理部を情報処理サーバ100や制御部110が備える。
【0039】
(4 データの具体例)
次に、情報処理サーバ100のデータベース140が管理する位置履歴情報141の一例を
図5を参照しながら説明し、データ抽出部117によって作成されるトリップデータの一例を
図6を参照しながら説明する。
【0040】
(4.1 位置履歴情報の具体例)
図5は、データベース140が管理する位置履歴情報141の一例を示す図である。位置履歴情報141は、上述の通り、携帯端末200が随時送信する位置情報を、位置情報受信部115がDB140に逐次登録することにより更新される。
【0041】
図5の位置履歴情報141の例では、各携帯端末200に対して一意に割り当てられる端末IDと、その端末IDの位置情報(緯度経度)と、当該位置情報を測位した時刻と、当該位置情報を測位した際の測位精度等とが対応付けて管理されている。
【0042】
よって、ある携帯端末200の位置情報の履歴を把握したい場合には、位置履歴情報141で管理されるデータのうち、当該携帯端末200の端末IDの位置情報を、測位時刻順に並べればよい。
【0043】
(4.2 トリップデータの具体例)
図6は、データ抽出部117によって作成されるトリップデータの一例を示す図である。トリップデータは、滞在か移動かを示すステータスと、滞在ないし移動の開始時刻と終了時刻と、滞在ないし移動の場所を示すエリア情報とを含む。
【0044】
(5 処理の流れ)
以下、
図7及び
図8を参照しながら、通信システム1における処理の流れを説明する。尚、後述の各処理ステップは、処理内容に矛盾を生じない範囲で、任意に順番を変更して若しくは並列に実行することができ、また、各処理ステップ間に他のステップを追加しても良い。更に、便宜上1つのステップとして記載されているステップは複数のステップに分けて実行することもでき、便宜上複数に分けて記載されているステップを1ステップとして実行することもできる。
【0045】
(5.1 携帯端末の処理の流れ)
図7は、位置情報の送信にかかる携帯端末200の処理の流れを示すフローチャートである。まず、携帯端末200は、GPS受信機253等を使用して、現在位置に係る位置情報を取得する(S701)。その上で、携帯端末200は、現在時刻(測位時刻に対応)と、S701で測位した位置情報と、自身の端末IDと、S701における測位の測位精度等とを含むデータを無線通信部220から情報処理サーバ100へと送信する(S703)。
【0046】
携帯端末200は、位置情報取得にかかる処理が終了しない限り(S705のNo)、S701及びS703のGPSからの位置情報の取得及び送信を、断続的に(例えば5分間隔で)繰り返す。尚、携帯端末200が移動していない場合(例えば、加速度センサ251が移動を検出していない場合)には、位置情報を送信しないように実装しても良い。
【0047】
(5.2 情報処理サーバの処理の流れ)
次に、
図8を参照して、情報処理サーバ100の処理の流れを説明する。
図8は、情報処理サーバ100の処理の流れを示すフローチャートである。尚、本フローチャートでは図示省略しているが、情報処理サーバ100は、行動履歴判別処理とは独立して、S703で送信されたデータを携帯端末200から受信すると、それに応答して、位置履歴情報141を更新する処理を行うことができる。具体的には、位置情報受信部115が、S703で送信された位置情報を含むデータを携帯端末200から受信すると、制御部110が、データベース140の位置履歴情報141に、受信したデータを順次追加する。このように位置履歴情報141が形成されていることを前提に、以下、ユーザの行動履歴判別処理について説明する。
【0048】
まず、データ抽出部117の読込部117Aは、位置履歴情報141から端末IDをキーにデータを読み出して、位置情報を測位時刻順に並べる。そして、グループ化処理部117Bは、時間的に連続する複数の位置情報が所定の関係にある場合に、それらをグループ化する(S801)。
【0049】
次に、グループ分けした各グループ毎に、データ抽出部117の行動判別部117Cは、ユーザが当該グループに対応するエリア内にいた時間を推定する(S803)。例えば、同じグループに属する位置情報のうち、測位時刻が最も遅いものから、最も早いものを引いた差分を取ることによって、エリア内にいた時間が暫定的に推定される。そして、暫定的に推定された時間が一定の閾値よりも長い場合には(S805:YES)、ユーザが当該グループに対応するエリア内に「滞在」していたものと判定し(S807)、「滞在」であると判定された場合には、その滞在グループに対応する滞在エリアを抽出する(S809)。滞在エリアを抽出する際には、滞在グループに含まれる複数の位置情報から算出される所定形状の領域を、当該滞在グループに対応する滞在エリアとみなすことが考えられる。
【0050】
図14は、滞在エリアの具体的な形状を種々例示したものである。
図14(A)は、代表点から所定長の範囲内を滞在エリアとするものである。代表点は、滞在グループに含まれる複数の位置情報を基に算出する。例えば、各位置情報の重心や、測位精度を加味した重み付け重心によって、代表点を求めることが考えられる。エリアの形状は、円に限られず、多角形などを採用可能である。
図14(B)は、各位置情報を中心とする円形領域を包含する領域を滞在エリアとするものである。円形領域の半径としては、各位置情報の測位精度を採用可能であるが、各位置情報に共通の定数を採用してもよい。
図14(C)は、各位置情報を中心とする円形領域を、さらに滑らかに結んだ領域を滞在エリアとするものである。
図14(D)は、芋づる式に連なった円形領域を包含する領域を滞在エリアとするものである。このように、滞在エリアとしては、種々の形状が考えられ、滞在グループに含まれる複数の位置情報の一部又は全部を包含する任意の領域を採用可能である。
【0051】
一方、推定時間が一定の閾値以下の場合には(S805:NO)、「滞在」していたものと判定しない。
【0052】
このようにして、各グループ毎にS803からS809の処理を実行して、「滞在」か否かを判定する。全てのグループについて、「滞在」か否かを判定した後、行動判定部117Bは、ある「滞在」から次の「滞在」までの間を「移動」と判定する(S811)。その後、各グループに含まれる位置情報と、その前後の位置情報ないし前後のグループとの関係に基づいて、滞在や移動の開始時刻と終了時刻及び滞在エリアや移動先及び移動元エリア等を含む行動履歴に係る情報が抽出、出力される(S813)。例えば、ある「滞在」の終了時刻を「移動」の開始時刻とみなし、次の「滞在」の開始時刻を「移動」の終了時刻とみなす。また、ある「滞在」の滞在位置及び次の「滞在」の滞在位置を、それぞれ移動元と移動先とみなす。
【0053】
(5.3 グループ化処理の手法)
次に、S801のグループ化処理について、グループ化処理部117Bの処理を具体的に説明する。グループ化処理としては、例えば、位置情報を含む所定形状の領域が重複する場合にグループ化する手法、時間的に連続する2つの位置情報間の距離ないし速度に基づいてグループ化する手法、同一メッシュで測位される位置情報を1つのグループとする手法、などを採用可能であるが、これらに限定されない。以下、
図9乃至
図11を参照して、種々のグループ化処理の手法について説明する。
【0054】
図9は、ある位置情報を含む所定形状の領域が、他の位置情報を含む所定形状の領域と重複する場合に、これらの位置情報を1つのグループとする手法を例示した図である。同図に示す実施例では、所定形状の領域として円形領域を用いており、まず、位置情報によって表される点を中心に、測位精度を半径とする円を描く。このようにして描いた円形領域の少なくとも一部が、時間的に連続する他の位置情報に基づいて描かれた円形領域との間で重複する場合、これらを1つのグループにまとめる。
図9に示した例においては、点91,92,93,94のそれぞれを中心に、各点の測位精度を半径とする円形領域911,921,931,941を描く。そうすると、領域95において、円形領域911と921が重複し、また、領域96において、円形領域921,931及び941が重複している。そこで、グループ化処理部117Bは、点91と92を1つのグループ(例えば「グループA」とする。)とし、点92,93及び94を別のグループ(例えば「グループB」とする。)として形成する。尚、本実施例では、各位置情報について、測位精度を半径とする円を描いたが、これに限られない。測位精度に応じて半径を変えることが好ましいが、測位精度によらず、半径を一定としてもよい。また、測位精度以外のパラメータを利用して、半径を算出してもよい。
【0055】
ここで、グループAとBが滞在グループであると判別されたものと仮定して、滞在エリアの抽出処理の一例について、
図9に示した具体例に基づいて説明すると、グループAについては、円形領域911と921を包含する領域内の任意の点が、グループAの代表点として設定され、この代表点を中心とする、半径が所定長の円形領域(不図示)が、グループAに対応する滞在エリアとみなされる。グループBについては、円形領域921,931及び941を包含する領域内の任意の点がグループBの代表点として設定され、この代表点を中心とする、半径が所定長の円形領域(不図示)が、グループBに対応する滞在エリアとみなされる。ここで、グループAとグループBに対応する滞在エリアの半径は、同じものでも、異なるものでもよい。
【0056】
本実施例では、点92が、グループAとグループBの両者に重複して属しているものして、グループが形成される例を示したが、他の実施例として、芋づる式に連なった複数のグループを1つのグループにまとめることも考えられる。
【0057】
また、グループを形成する際には、時間的に連続する複数の位置情報について、ある位置情報を含む所定形状の領域が、他の位置情報を含む所定形状の領域と重複するか否かを判別してグループを形成することを想定しているが、位置情報に異常があることが明らかな場合には、当該位置情報を除いて、グループを形成してもよい。例えば、ある測位点の位置が、時間的にその前後に測位された点の位置と比べて明らかに外れている場合が実際に存在する。そのような場合には、異常と考えられる測位点にしばられることなく、グループ化処理を行うことが好ましい。
【0058】
図10は、時間的に連続するないし近接する2つの位置情報によって表される2地点間の距離ないし速度が一定の範囲内にある場合に、連続して一定の範囲内にある複数の位置情報を1つのグループとする手法を例示した図である。この実施例では、時間的に連続する2つの位置情報の間の距離、又は、時間的に連続する2つの位置情報とそれに関連する時刻情報に基づいて算出した2点間の速度が、所定の閾値よりも大きいか否かを判別する。そして、所定の閾値よりも大きい場合には、これら2点を別のグループに属するものであると判別し、閾値以下の場合には、同じグループに属するものであると判別する。例えば、
図10に示した例においては、点91と点92の間の距離が所定の閾値より大きく、点92と点93及び点93と点94の間の距離がそれぞれ所定の閾値より小さいものとする。このとき、点91と点92は別のグループに属するものであると判別し、点92と点93及び点93と点94をそれぞれ同じグループに属するものであると判別する。その結果、グループ化処理部117Bは、点91を1つのグループとし、点92,93及び94を別のグループとしてグループ化する。この実施例においても、位置情報に異常があることが明らかな場合には、当該位置情報を除いて、グループを形成してもよい。異常値を除いた場合には、時間的に近接する2つの位置情報によって、2地点間の距離ないし速度を求めることが考えられる。
【0059】
図11は、同一メッシュで測位される位置情報を1つのグループとする手法を例示した図である。この手法では、同じメッシュに属する位置情報を1つのグループとしてグループ化する。ここで、メッシュは、緯度経度に基づいて地図を分割して得られる複数の分割領域である。尚、本実施形態では、メッシュ領域は一辺500mの正方形の領域であるものとして説明するが、これに限られるものではなく、仕様や設計に応じて適宜メッシュ領域の分割領域の形状やサイズを設定することができる。例えば、メッシュ領域の形状は、四角形、六角形、ひし形等の多角形や、円等の曲線で囲まれた領域とすることができる。また例えば、ユーザが頻繁に滞在するエリアを特定したい場合はメッシュ領域のサイズを大きく設定し、一方、ユーザが頻繁に訪れる店などを特定したい場合はメッシュ領域のサイズを小さく設定することができる。またメッシュ領域のサイズは一定でなくてもよい。例えば、都市部のメッシュ領域はより小さく(細かく)するようにしてもよい。また、人口統計情報によって地域毎にメッシュ領域のサイズを変えたり(例えば人口が多い地域のメッシュ領域は小さくする。)、市区町村の分類、宅地種別、日常圏の情報などに基づいてサイズを設定したりしてもよい。また、隣接するメッシュと一部重複するようにメッシュ領域を設定してもよい。
図11に示した例においては、グループ化処理部117Bは、点91を1つのグループとし、点92と点93を別のグループとし、点94をさらに別のグループとしてグループ化する。
【0060】
(5.4 「滞在」と「移動」の時刻調整処理)
上述の実施例では、行動判別部117Cが「滞在」と判別したグループの仮開始時刻及び仮終了時刻を、「滞在」の開始時刻及び終了時刻とみなし、ある「滞在」の仮終了時刻と次の「滞在」の仮開始時刻を、「移動」の開始時刻及び終了時刻とみなす実施例について説明したが、「滞在」の開始時刻や「移動」の開始時刻を、より詳細に推定する調整処理を行うことが好ましい。この調整処理によれば、連続した測位点に基づいて、測位点にひも付ける必要なく、ユーザの行動をより実態に即した形で「滞在」と「移動」とに切り分け可能であるという特徴を有する。以下、この調整処理について説明する。
【0061】
図12は、移動と滞在の時刻調整処理を説明するための図である。ここで、例えば、上述の手法で行動履歴判別処理を行ったとき、9時30分までエリアAに「滞在」し、10時から11時までエリアBに「滞在」していたと判別されたものとする。このとき、調整処理を用いない場合には、滞在と滞在の間、すなわち、9時30分から10時までを単に「移動」であるものとみなした。しかし、行動判別部117Cは、ある滞在と次の滞在の間の距離と時間に基づいて、移動の開始及び終了時刻を実態に即して調整する時刻調整処理を行うことが好ましい。この時刻調整処理を行うことによって、2つの滞在グループ間を単純に移動とみなすのではなく、例えば、エリアAの「滞在」が9時50分まで続いていて、9時50分から10時までの間に、エリアAからエリアBに「移動」していたなどと判別可能である。
【0062】
より具体的には、次の処理が考えられる。すなわち、2つの滞在グループ間を所定の移動速度で移動するものと仮定して、2つの滞在グループ間の距離から移動時間を求める。そして、測位点から求めた2つの滞在グループ間の時間から、移動時間を引くことによって、滞在時間を割り出す。その後、この滞在時間を移動元ないし移動先の滞在として割り振ることにより、滞在と移動の時刻調整処理を行う。例えば、エリアAとエリアBとの間の距離が5kmであったものとする。仮に、移動速度が定数であり30km/時であったとすれば、5kmの移動には10分を要する。そこで、9時50分までエリアAに滞在していて、10分間でエリアBに移動し、その後10時からエリアBに滞在していたものと調整される。
【0063】
ここでは、調整処理について、先の滞在に割り振る形で、滞在と移動の時間調整を行う例を示したが、これに限らず、種々の調整処理を採用可能である。例えば、後の滞在に時間を割り振る場合には、9時30分までエリアAに滞在し、9時30分から9時40分まで移動し、9時40分からエリアBに滞在しているというように調整してもよい。
【0064】
また、移動速度を定数ではなく、変数として設定してもよい。例えば、移動経路から電車の移動なのか車での移動なのかを判別し、移動速度を移動手段に合わせて設定してもよい。このとき、移動元と移動先に電車の駅やバスの停留所がある場合には、時刻表と突き合わせて、移動時刻を求めることも考えられる。また、移動時刻に応じて、移動速度を変更してもよい。この場合、朝は渋滞が起きるため移動速度は20km/時であるが、それ以外の時間帯では40km/時で移動する、といった具合である。
【0065】
他にも、「滞在」エリアに入った時刻を推定する調整態様も考えられる。具体的には、「滞在」の代表点から所定距離の円内に入った時刻を距離比例で求めて、滞在ないし移動の開始時刻とするといった態様が考えられる。例えば、所定距離の円を、半径500mの円としたとき、上記の例では、エリアAの代表点とエリアBの代表点との間の距離が5kmであるから、エリアA及びエリアBから500mの円は、AB間の距離のそれぞれ10分の1である。これをAB間の時間である30分の配分に用いて、9時33分までエリアAに滞在し、9時33分から9時57分までエリアBに向かって移動し、9時57分からエリアBに滞在しているなどというように調整可能である。なお、エリアの形状は円に限られず、任意の形状を採用可能である。
【0066】
(5.5 グループ化の際の重複調整処理)
S801のグループ化の際に、1つの位置情報が複数のグループに属することがある。本実施例では、そのような場合の調整処理を実装可能である。
【0067】
図13は、重複調整手段を説明するための図である。同図に示すように、位置情報1411〜1415はグループAに属し、位置情報1412〜1416はグループBに属する場合を考える。すなわち、位置情報1412〜1415は、グループAにもグループBにも属している。このような場合、重複調整処理により、各位置情報がグループAかグループBのいずれかに属するものとなるよう調整される。例えば、各グループの代表点を求め、それぞれの位置情報について、グループ代表点までの距離が最も短いグループに属すると判定する調整ロジックが考えられる。ここで、複数のグループに交互に属するものと判定されてしまう場合には、交互となる点の集団を等分して、前後のグループに分配するロジックを適用することが好ましい。また、グループに属する点の数に応じて、重複点を前後のグループに比例配分する調整ロジックが考えられる。このような調整ロジックにより、位置情報1412と1413はグループA、位置情報1414と1415はグループBなどと調整可能である。
【0068】
(6 本実施形態の効果)
以上説明したように、本実施形態の情報処理サーバ100は、位置履歴情報を基にユーザの行動履歴を分析して、「移動」と「滞在」とを含むトリップデータを生成する。このとき、「移動」と「滞在」との間で、適宜時間配分の調整をすることが可能である。
【0069】
(7 他の実施形態)
(1)上記実施形態では、ユーザの行動履歴を判別する際に、まず「滞在」を判別した後、ある滞在と次の滞在の間を「移動」として判別する手法について説明したが、前述のとおり、まず「移動」を判別した後、ある移動と次の移動の間を「滞在」として判別する手法等を採用可能である。例えば、グループ化処理部117Bにおいてグループ化された各グループ毎に、携帯端末200の滞在時間を算出し、所定の閾値よりも小さい場合には、「移動」であるものと判別し、その後、ある「移動」と次の「移動」の間を、「滞在」であるものと判別するようにしてもよい。
【0070】
(2)S801のグループ化処理について、測位した位置情報に異常があるものと推定される場合、すなわち、前後の点と比べて明らかに位置が異なっている場合や測位精度が著しく悪い場合には、その点を除いてグループを形成するようにしてもよい。GPS等による測位において、移動の開始前後や終了前後に、測位精度が悪くなることがある。そこで、測位精度が所定値よりも悪い場合、そのような異常点を除いてグループ化処理を行うことが考えられる。
【0071】
(3)上記実施形態では、携帯端末200がGPS等により測位する形態を示したが、携帯端末200の測位手法をこれに限られず、種々の手法を採用可能である。例えば、GPS以外の電波を利用した測位手法を採用してもよい。また、携帯端末200側で測位するのではなく、基地局側で測位する手法を採用してもよい。
【0072】
(7 付記事項)
尚、前述の各実施形態の構成は、組み合わせたり或いは一部の構成部分を入れ替えたりしてもよい。また、本発明の構成は前述の実施形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。