説明の明確化のため、以下の記載および図面は、適宜、省略、および簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。従って、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、又はそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。よって、以下の説明に回路として例示した構成は、ハードウェア又はソフトウェアのいずれか又はその両方によって実現することが可能であり、ある機能を実現する回路として示された構成は、同様の機能を実現するソフトウェアの一部としても示され得る。例えば、制御回路と記載された構成は、制御部として記載され得る。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、および電磁波を含む。一時的なコンピュータ可読媒体は、電線および光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
本開示において、通信は無線通信であって、端末装置間のダイレクト通信に限らず、インターネット等のネットワーク回線や基地局等を介して行う通信も含まれる。また通信によって、端末装置は、音声データ、テキストデータ、映像データ、画像データ等の各種データを取得するが、データの種類は問わない。通信によって、複数の端末装置間(ユーザ間)で情報共有がなされる。通信の具体例としては、音声通話、映像通話、チャット、メール、ショートメッセージ等である。
本開示において、通信履歴データとは、過去に行われた通信および現在行われている通信に関するデータである。通信履歴データは、端末装置を識別するための端末識別子(端末ID)、通信開始時刻(開始日時)、通信終了時刻(終了日時)などの通信属性情報を含む。また、通信履歴データに、通信を発信(発呼)した端末装置と、通信を受信(着呼)した端末装置を判別できる情報を含めてもよい。通信履歴データは、「履歴データ」あるいは「通信履歴」とも称される。
本開示において、通信状態は、典型的には、通信を実行中であるか否かを示す情報である。つまり、通信状態として「通信中」と「非通信中」の2つの状態がある。例えば、音声通話の場合、「通話中」と「非通話中」の2つの状態がある。さらに、通信状態として、「通信中」と「非通信中」の他に、通信を試みている途中である「途中段階」を用いてもよい。また、通信状態として、通信が頻繁に行われている「活性状態(アクティブ状態)」と、通信が頻繁に行われていない「非活性状態(非アクティブ状態)」を用いることもできる。
本開示において、位置データは、端末装置の位置を示す情報(位置情報)と、位置に係る時刻(日時)とを対応付けたデータである。位置情報は、例えばGPS(Global Positioning System)に基づくデータ、無線通信の基地局の位置と電波情報に基づいて生成されるデータなどである。位置情報には、緯度、経度が少なくとも含まれる。なお、位置データを「位置時刻情報」、「位置時刻データ」、「時刻付き位置情報」、「時刻付き位置データ」などと呼ぶ場合もある。
本開示において、二者間通信は、2つの端末装置間での通信である。二者間通話は、2つの端末装置間で音声データを交換する通信である。またグループ通信は、1つの端末装置が発信したデータが複数の端末装置で受信できる通信である。すなわち、3つ以上の端末装置が係る通信であり、1対多通信とも呼ばれる。グループ通話は、3つ以上の端末装置で音声データを交換する通信である。
<実施の形態1>
図1は、実施の形態1に係る通信システム全体の構成と、移動情報処理装置の機能ブロックを示す図である。本実施の形態に係る移動情報処理装置100は、ネットワーク回線900に接続し、複数の端末装置910それぞれとデータ交換が可能である。移動情報処理装置100とネットワーク回線900との接続は、有線、無線、それらの組み合せどれでもよい。本図においては省略しているが、端末装置910は、携帯電話、業務用無線、無線LAN等の基地局装置を介して、ネットワーク回線900に接続されている。すなわち複数の端末装置910は、無線通信によって相互に接続される。端末装置910は、基本的に、携帯可能な装置又は車載装置であり、その位置が時間とともに変化する。ただし、通信に係る一部の端末装置910は、位置が変化しない固定装置であってもよい。
また、移動情報処理装置100と端末装置910との間においても、音声通話等の通信を行うことができる。従って、移動情報処理装置100は、端末装置910の1つ(高機能な端末装置)であるともいえる。移動情報処理装置100は、位置が固定であっても、移動可能であってもよい。また、移動情報処理装置100は、表示装置300に接続し、移動情報処理装置100が生成した移動情報を表示装置300に出力する。
本実施の形態においては、複数の端末装置910の間、あるいは端末装置910と移動情報処理装置100又は他の装置との間で、二者間通信およびグループ通信が行われる。
移動情報処理装置100は、通信履歴データ取得部101、位置データ取得部102、記憶部103、移動情報生成部104、および移動情報出力部105、通信処理部106を有している。
通信履歴データ取得部101は、ネットワーク回線900を介して、複数の端末装置910が行う通信に関する通信履歴データを取得する機能を有する。具体的には、通信システムを管理する管理装置(図示せず)、あるいは複数の端末装置910から、ネットワーク回線900を介して、上述の通信履歴データを取得する。また、通信履歴データ取得部101は、取得した通信履歴データを記憶部103又は移動情報生成部104に供給する機能を有している。
位置データ取得部102は、ネットワーク回線900を介して、通信システムを管理する管理装置(図示せず)、あるいは複数の端末装置910から、各端末装置の位置データを取得する。また、位置データ取得部102は、取得した位置データを記憶部103又は移動情報生成部104に供給する機能を有している。なお、位置データ取得部102は一度に1つの位置データを取得してもよいし、複数の時刻における位置データをまとめて1回で取得してもよい。一度に1つの位置データを取得する場合は、複数回の取得処理を行って、各端末装置について複数の時刻の位置データを取得する。位置データ取得部102は、「位置時刻情報取得部」あるいは「位置時刻データ取得部」とも称される。
記憶部103は、通信履歴データ取得部101が取得した通信履歴データと、位置データ取得部102が取得した位置データとを記憶する機能を有する。
移動情報生成部104は、記憶部103が記憶した通信履歴データ、位置データに基づいて、端末装置の移動情報を生成する機能を有する。なお、移動情報生成部104は、「軌跡情報生成部」、あるいは「生成部」とも称される。
移動情報出力部105は、移動情報生成部104において生成した移動情報を表示装置300に出力する機能を有する。本実施の形態においては、液晶ディスプレイ等の表示装置に出力するが、プリンター等に出力してもよい。なお、移動情報出力部105は、「軌跡情報出力部」、あるいは「出力部」とも称される。
通信処理部106は、端末装置910との通信を行う機能を有している。例えば、音声通信(通話)を行う場合には、マイク等の音声入力装置(図示せず)からの信号を処理する音声入力部(図示せず)、スピーカ等の音声出力装置(図示せず)への信号を処理する音声出力部(図示せず)、ネットワーク回線900との間でデータを送受信する送受信部(図示せず)が通信処理部106に含まれている。さらに、映像通信を行うための機能を備えていてもよい。移動情報処理装置100は、端末装置910との間で二者間通信又はグループ通信を行う。なお、通信処理部106を省略し、移動情報処理装置100に通信(通話)機能を持たせないように構成することも可能である。
なお、移動情報処理装置100は、通信システムを管理する管理装置としての機能を有していてもよい。また移動情報処理装置100は、通信システムを管理する管理装置に接続し、管理装置を介して通信履歴データ等を取得してもよい。
端末装置910は、お互いに音声通話をする機能を有する。さらに、テキストメッセージを交換する通信機能や、映像通信を行う機能を備えていてもよい。また、端末装置910は、GPS(Global Positioning System)等の位置計測機能を備えており、自端末装置910の位置(緯度、経度)を計測することができる。さらに高度を計測してもよい。また、端末装置910は、位置を示す情報(位置情報)と位置を計測した日時を移動情報処理装置100に送信する機能を有する。端末装置910は、基地局装置およびネットワーク回線900を経由して定期的(例えば10秒に1回)、又は任意のタイミングで、自端末装置の位置情報を移動情報処理装置100に送信する。また、通信開始時における位置情報と、通信終了時における位置情報を必ず送信するようにしてもよい。また通信中の位置情報の計測間隔と、通信中ではない期間(非通信期間)の位置情報の計測間隔を変えてもよい。例えば、通信中は1秒に1回の頻度で位置情報を計測し、非通信期間では20秒に1回の頻度で計測する等の処理を行ってもよい。また、端末装置910が通信システム全体を管理する管理装置に位置情報を送信し、移動情報処理装置100が管理装置から端末装置910の位置情報を取得するようにしてもよい。音声通話中に同時に位置情報を送信できない通信システムの場合は、音声通話中の端末装置910の位置情報を端末装置910の記憶部に記憶しておき、音声通話終了後に位置情報をまとめて送信してもよい。すなわち端末装置910は、1回の送信処理において、1つの位置情報を送信してもよいし、複数の位置情報(複数の日時における位置情報)を送信してもよい。また、端末装置910が、自端末装置に関する通信履歴データを移動情報処理装置100又は管理装置に送信してもよい。
端末装置910は、例えば、携帯電話、スマートフォン、タブレット、スマートウォッチ、ラップトップ型コンピュータなどの通信機能を有する移動可能な端末装置である。また、通信機能を持つウェアラブルデバイスであってもよい。なお、端末装置910は、ドローン、自動車、航空機、又は船舶などの通信機能を有する移動体を含んでもよい。
端末装置910は、自端末装置の位置情報を送信する機能を持つ必要があるが、端末装置を使用するユーザ間、又は移動情報処理装置100のユーザと端末装置910のユーザ間で共有される情報(データ)については、少なくとも受信する機能があればよい。例えば、テキストメッセージによって情報が共有されるグループ通信の場合、監督者等が使用する送信装置からテキストメッセージを一斉に送信し、各端末装置がそのテキストメッセージを受信すればよい。もちろん、端末装置がテキストメッセージを送信する機能を持った方が利便性は高くなるが、送信機能を持たなくもよい。つまり、端末装置は、複数のユーザ間で情報共有を行うための通信に関して、少なくとも受信する機能を備えればよい。その意味で、通信は双方向通信であっても、片方向通信であってもよく、双方向通信の場合は全二重通信であっても、半二重通信であってもよい。
表示装置300は、移動情報処理装置100から受け取る移動情報を表示するための表示装置である。表示装置300は、例えば、液晶表示装置、メガネ型ディスプレイ、プロジェクタ等である。
次に、図2を参照しながら、移動情報処理装置100のハードウェア構成について説明する。図2は、移動情報処理装置100のハードウェア構成の例を示す図であり、移動情報処理装置100は、ネットワーク回線900に接続するコンピュータである。移動情報処理装置100は、表示装置300に接続している。また、移動情報処理装置100には、キーボード、マウス等の入力装置310が接続されている。なお、複数のコンピュータを用いて、移動情報処理装置100を構成してもよい。その場合、全てのコンピュータに、移動情報処理装置100の全機能を持たせた上で、分散処理を行ってもよい。あるいは、あるコンピュータが移動情報処理装置100に必要な一部の機能を実行し、他のコンピュータがそれ以外の機能を実行するといった機能別の分散処理を行ってもよい。
移動情報処理装置100は、移動情報を生成し、生成した移動情報を表示装置300に出力する。移動情報処理装置100は、生成した移動情報と、地図データとを重畳して画像データを生成する機能を有していてもよい。移動情報処理装置100は、演算部110、記憶部103、通信I/F130(I/F=Interface)、およびバスI/F140を有している。
演算部110は、CPU(Central Processing Unit)を含む演算装置である。演算部110は、記憶部103、通信I/F130、およびバスI/F140に接続し、各構成から適宜データを受け取り、受け取ったデータに基づいて種々の演算を行う。また、演算部110は、演算結果に基づいて、各構成に対して指示を行う。演算部110は、移動情報生成部104としての機能を有している。演算部110は、通信I/F130が受け取った通信履歴データおよび位置データを記憶部103に記憶させる。また、演算部110は、移動情報生成部104において演算した移動情報を、バスI/F140に供給する。
記憶部103は、種々のデータを記憶する記憶装置である。記憶部103は、例えば、DRAM(Dynamic Random Access Memory)やSDRAM(Synchronous Dynamic Random Access Memory)などの揮発性メモリ、もしくは、EPROM(Erasable Programmable Read Only Memory)やフラッシュメモリ、SSD(Solid State Drive)などの不揮発性メモリ、又はこれらの組合せにより構成される。記憶部103は、例えば、グループ情報記憶領域121、位置データ記憶領域122、通信履歴データ記憶領域123、および地図データ記憶領域124を有している。記憶部103は、移動情報生成部104が生成した移動情報を記憶してもよい。また、記憶部103は、通信I/F130から端末装置910の通話に係る音声データを受け取り、受け取った音声データを記憶してもよい。
グループ情報記憶領域121には、通信グループに関するデータであるグループ情報データが格納されている。グループ情報データには、グループID、および端末ID等が関連づけられている。グループ情報データの詳細は、後述する。
位置データ記憶領域122には、端末装置の位置情報を含む位置データが格納されている。位置データの詳細は、後述する。位置データ記憶領域122は、位置時刻データ記憶領域とも称される。端末装置910は、定期又は不定期に、位置情報を計測した日時および位置情報を移動情報処理装置100に送信する。通信履歴データ記憶領域123は、通信履歴データが格納されている。通信履歴データは、グループID、通信ID、発信端末ID、受信端末ID、通信開始日時、および通信終了日時を関連づけたデータである。通信履歴データの詳細は、後述する。
通信I/F130は、ネットワーク回線900から信号を受け取るインターフェイスである。通信I/F130は、任意の信号を処理して物理信号から論理信号を生成し、生成した論理信号を内部回路に供給する機能を有する。通信I/F130は、通信履歴データ取得部101、および位置データ取得部102を有している。すなわち、通信I/F130は、ネットワーク回線900から受け取った信号から通信履歴データを取得し、記憶部103に供給する。また、通信I/F130は、ネットワーク回線900から受け取った信号から位置データを取得し、記憶部103に供給する。バスI/F140は、演算部110から供給される移動情報を、表示装置300に出力する。このため、バスI/F140は、移動情報出力部105としての機能を有する。なお、通信I/F130に移動情報出力部105としての機能を持たせてもよい。
このような構成により、移動情報処理装置100は、移動情報を生成し、生成した移動情報を表示装置300に出力し得る。また、移動情報処理装置100は、生成した移動情報を地図データに重畳して画像データを生成し、生成した画像データを表示装置300に出力し得る。
次に、図3を参照しながら、記憶部103に記憶するグループ情報データについて説明する。端末装置910は、1つ以上のグループに所属することが可能である。端末装置910が所属するグループに変更が生じると、移動情報処理装置100は、端末装置910又は通信システムを管理する管理装置から、端末装置910とグループとの対応関係を示すデータを取得し、グループ情報データとして記憶部103に記憶する。図3は、実施の形態1に係るグループ情報データのデータ形式を示す図である。図示のごとく、記憶部103は、グループ情報データとして、グループID、端末ID、登録日時、および解除日時を関連づけて記憶している。
グループIDは、グループを一意に識別することができる文字列又は数字により構成される。図3の例示において、グループIDは、グループ1およびグループ2が示されている。
端末IDは、端末装置を一意に識別をするための識別子である。端末IDは、例えば端末装置が固有に有するシリアル番号であってもよい。また、端末IDは、例えば端末装置が固有に有するMACアドレス(Media Access Control address)であってもよい。端末IDはグループIDに関連づけて登録される。また、端末IDは複数のグループIDに関連づけて登録され得る。
登録日時は、グループIDに端末IDが関連づけて登録された日時である。また、解除日時は、グループIDに関連づけられていた端末IDが登録解除された日時である。日時は、日にちおよび時刻により構成されており、時刻の単位は秒を含んでいる。時刻は、秒単位を含まなくてもよい。また時刻は秒単位に加えてミリ秒単位を含んでもよい。解除日時の欄は、端末IDが登録解除されていない場合は「NULL」が表示されている。
グループIDについて具体的に説明する。図3の例において、グループ1には、端末T00、T01、T50、およびT08等が含まれることが示されている。そのうち、例えば、端末T00は「2017年8月1日9時1分00秒」に登録されたものである。また、端末T00は、解除日時に「NULL」が記載されている。すなわち、端末T00はグループ1に登録され、解除されていない。同様に、端末T01および端末T50も、グループ1に登録されており、且つ、解除されていない。一方、端末T08は、「2017年8月1日9時50分00秒」にグループ1に登録された後、「2017年8月1日10時20分35秒」に、そのグループ1から登録解除されている。
また、端末T00は、「2017年7月30日12時20分02秒」にグループ1に登録された後、「2017年7月30日14時30分07秒」に登録が解除されていたことが示されている。また、また、端末T00は、「2017年7月25日18時30分25秒」にグループ2に登録された後、「2017年7月25日20時10分11秒」に登録が解除されていたことが示されている。
グループ2には、上述した端末T00の他に、端末T20が登録されており、解除されていないことが示されている。また、グループ2には、端末T21が登録されていたが、その後に解除されたことが示されている。
このように、記憶部103に記憶されているグループ情報データには、現在グループに登録されている端末装置の端末IDが含まれる。また、グループ情報データには、過去においてグループに登録されていた端末装置の端末IDが含まれる。なお、グループ通信を行わない端末装置に関しては、グループ情報データに登録されない。
本実施の形態において、通信レイヤの最も上位層であるアプリケーション層における通信単位で通信を扱う。例えば、IP(Internet Protocol)を使った電話において、ある端末が発信(発呼)し、相手の端末が応答することにより、回線(セッション)が確立されるが、回線(セッション)が確立されてから回線(セッション)が切断されるまでを1つの通信(1回の通信)として扱う。通信期間は、このような回線(セッション)が継続している期間を指す。上位レイヤにおける1つの通信期間において、下位レイヤでは、例えば、IPパケットが複数回送受信されているが、このような下位レイヤの通信動作については対象としない。音声通話、映像通話、チャット(テキストチャット、ボイスチャット、ビデオチャット等)などでは、セッションの長さ、つまり通信の継続時間を、ユーザが意識して決めることができる。このため、セッションを使用するタイプの通信ともいえる。セッションを使用する通信では、セッションが開始されてから終了までを通信期間とする。このような通信では、通信に係る複数の端末装置間で、ほぼリアルタイムに情報共有がなされる。すなわち、端末装置を使用するユーザは、通信期間中に逐次情報を入手する。
一方、メールやショートメッセージ等の通信では、ユーザはセッション(という単位)を意識しない。例えば、メールを送信する過程において、下位レイヤのプロトコルでは「セッション」が使用されるが、ユーザは下位レイヤのセッションを意識しないため、本実施の形態では下位レイヤのセッションを考慮しない。このため、メールやショートメッセージ等は、セッションを使用しないタイプの通信といえる。セッションを使用しない通信では、1通のメール(又はショートメッセージ)の送信が開始されてから受信が終了するまでを通信期間とする。このような通信では、通信終了後に、通信に係る複数の端末装置間、又は移動情報処理装置100と端末装置間で情報共有がなされる。すなわち、端末装置を使用するユーザは、通信終了後に情報を入手することになる。本実施の形態において、セッションを使用する通信と、セッションを使用しない通信の両方を対象とする。このため、端末装置を使用するユーザは、通信期間中又は通信終了後に情報を入手するといえる。従って、ユーザが通信を契機とする行動を行う可能性があるのは、通信期間中および通信終了後である。
次に、図4を参照しながら、記憶部103に記憶されている通信履歴データについて説明する。図4は、実施の形態1に係る通信履歴データのデータ形式を示す図である。図示のごとく、記憶部103は、通信履歴データとして、通信ID、グループID、発信端末ID、受信端末ID、通信開始日時、および通信終了日時を関連づけて記憶している。これらの情報は、通信属性情報とも呼ばれる。なお、通信終了日時の代わりに、通信時間(通信継続時間)を記憶してもよい。その場合は、通信開始日時に通信時間を加算することにより通信終了日時を導出することが可能である。すなわち、通信属性情報に、通信終了日時を導出可能な情報を含めてもよい。また、セッションを使用しない通信を処理対象とする場合、通信履歴データの中の通信終了日時を省略してもよい。記憶部103は、所定の期間(例えば、直近の6ヶ月間)における通信履歴データを記憶する。所定の期間を経過した古いデータは随時削除すればよい。
通信IDは、通信を一意に識別するための情報である。音声通話による通信の場合は、通話IDとも言える。発信端末IDは、通信において発信(発呼)した端末装置の端末IDを示している。発信端末IDは、1つの通信に係る複数の端末装置の中で、通信システムに対して通信開始要求を最初に送信した端末装置を示すといえる。受信端末IDは、通信を受信(着呼)した端末装置の端末IDを示している。二者間通信の場合は、受信端末IDに1つの端末IDが記録され、グループ通信の場合は、受信端末IDに2つ以上の端末IDが記録される。
通信開始日時は、1つの通信が開始された日時を示している。通信終了日時は、その通信が終了された日時を示している。上述したように、セッションという単位がある通信においては、通信開始日時はセッションが開始された日時であり、通信終了日時はセッションが終了した日時である。例えば、チャット通信では、通信開始日時はチャットの開始日時であり、通信終了日時はチャットの終了日時である。通信終了日時が「NULL」と表示されているのは、その通信が終了しておらず、現在も継続していることを示している。なお、移動情報処理装置100が、管理装置又は各端末装置910から通信履歴データを取得した段階で、グループ通信の受信端末IDの情報が存在しない場合には、移動情報処理装置100は、グループ情報データを参照して、受信端末IDを生成し記録する。具体的には、移動情報処理装置100は、通信履歴データの通信開始日時が、グループ情報データの登録日時から解除日時までの間に含まれ、かつグループIDが一致するデータに該当する端末IDのリストをグループ情報データから取得する。そして、移動情報処理装置100は、取得した端末IDリストから発信端末IDを除外した端末IDを受信端末IDとする。
図4に例示する通信履歴データについて具体的に説明する。図4は、音声通話による通信が行われている例を示しており、図4に示しているグループIDの内、グループ1に対応して、通信IDが「1000」、「1001」、および「1002」の3つのグループ通信が記録されている。通信ID「1000」において、発信端末は端末T50であり、受信端末は端末T00、T01、T02等である。また、通信ID「1000」は、「2017年8月1日10時00分05秒」に開始され、「2017年8月1日10時01分30秒」に終了したことが示されている。また、通信ID「1002」において、発信端末は端末T01であり、受信端末は端末T00、およびT03である。また、通信ID「1002」は、「2017年8月1日10時10分10秒」に開始され、継続中であることが示されている。
記憶部103は、グループ通信だけでなく、二者間通信に係る通信履歴データについても記憶する。図4に示す通信ID「0011」のグループIDは「0」になっており、この通信は二者間通信であることを示している。すなわち、グループ0に係る通信履歴データは、グループ通信ではなく、二者間通信に係る通信履歴データである。グループ0に係る通信0011は、発信端末が端末T20であり、受信端末が端末T21である。つまり、端末T20および端末T21による二者間における通信0011は、「2017年8月1日10時30分00秒」に開始され、「2017年8月1日11時00分00秒」に終了されたことが示されている。グループに属する端末装置は、グループ通信と二者間通信を選択して通信を実行できる。
次に、図5に例示する位置データ(位置時刻データ)について説明する。図5は、実施の形態1に係る位置データの例を示す表である。記憶部103の位置データ記憶領域122は、図示のごとく、端末ID、日時、および位置情報を関連づけて記憶している。記憶部103は、所定の期間(例えば、直近の6ヶ月間)における位置データを記憶する。所定の期間を経過した古いデータは随時削除すればよい。図5に示す「日時」フィールドは、端末装置910が位置情報を計測した日時又は移動情報処理装置100が端末装置910から位置情報を取得した日時である。端末装置910から位置情報が計測された日時を受信した場合は、「日時」フィールドに、その受信した日時を記録し、日時を受信しなかった場合は、位置情報を受信した日時を記録すればよい。なお、記録された日時が、端末装置910が位置情報を計測した日時であるか、移動情報処理装置100が端末装置910から位置情報を取得した日時であるかを示す情報をさらに位置データ記憶領域122に記録してもよい。端末装置910が位置情報を計測した日時又は移動情報処理装置100が端末装置910から位置情報を取得した日時は、位置情報に係る時刻であるともいえる。「位置情報」フィールドは、端末装置の位置を示し、少なくとも緯度と経度を含む。このように、移動情報処理装置100が記憶する位置データは、少なくとも位置情報と、位置情報に係る時刻(日時)とを含む。また、図5に示すように、端末IDと、日時と、位置情報とを関連づけたデータを「端末位置データ」と呼ぶこともある。位置情報は、図5に示すように「緯度」および「経度」を「度分秒」で表記してもよいし、それ以外の形式(フォーマット)であってもよい。なお本実施の形態において、1つの端末装置の一時刻の位置情報に対応するデータ(図5の表の1行)を「位置データ」と呼ぶこともあるが、1つの端末装置の複数の時刻における位置情報や複数の端末装置の位置情報に対応するデータの集合(図5の表の複数行)をまとめて「位置データ」と呼ぶ場合もある。
図5に例示する位置データについて具体的に説明する。図5に示す表の一番上の行は、端末T00が日時「2017年08月01日10時05分30秒」において、緯度「35度40分52.202秒」および経度「139度46分1.386秒」に位置していたことを示している。同様に、図5に示す表は、端末T00が日時「2017年08月01日10時06分00秒」に緯度「35度40分51.198秒」および経度「139度46分10.655秒」に位置していたことを示している。また、図5に示す表は、端末T00が日時「2017年08月01日10時06分30秒」に緯度「35度40分50.571秒」および経度「139度46分11.582秒」に位置していたことを示している。このように位置データ記憶領域122の記憶する位置データは、各端末装置の位置の遷移を示しており、各端末装置の位置(位置情報)を時系列に示すデータであるとも言える。すなわち、位置データは、端末装置の位置の時系列データである。移動情報処理装置100は、このような位置データに基づいて、通信に係る複数の端末装置の位置の変化を示す移動情報を生成する。この移動情報は、端末装置の移動状況(移動状態)を示す情報であるといえる。
なお、位置データ記憶領域122に、端末装置の位置データだけなく、移動情報処理装置100の位置データを格納してもよい。また、通信システムを管理する管理装置の位置データを格納してもよい。移動情報処理装置100又は管理装置が移動しない場合には、位置データ記憶領域122に、これらの位置データを固定値として記憶すればよい。また、移動情報処理装置100又は管理装置が移動する場合には、位置データ記憶領域122に、これらの位置データを更新すればよい。移動情報処理装置100は、記憶部103の位置データ記憶領域122とは別の領域に、これらのデータを格納してもよい。
次に、図6〜8を参照しながら、移動情報処理装置100が行う処理について説明する。移動情報処理装置100は、まず、通信履歴データおよび位置データをそれぞれ取得し、取得した情報を記憶する処理を行う。図6は、移動情報処理装置が所定のデータを取得する際のフローチャートである。図6のフローチャートは、移動情報処理装置100が有する演算部110の処理を示している。
まず、演算部110は、通信履歴データを取得する(ステップS10)。具体的には、演算部110は、通信履歴データ取得部101に対して、ネットワーク回線900を介して、通信システムを管理する管理装置から通信履歴データを取得することを指示する。あるいは、管理装置が任意のタイミングで通信履歴データを送信し、通信履歴データ取得部101がそれを受信してもよい。通信履歴データ取得部101は、通信履歴データとして、通信ID、グループID、発信端末ID、受信端末ID、通信開始日時、および通信終了日時を取得する。
次に、演算部110は、位置データを取得する(ステップS11)。具体的には、演算部110は、ネットワーク回線900を介して、通信システムを管理する管理装置から位置データを取得するように、位置データ取得部102に対して指示する。位置データ取得部102は、端末ID、日時および位置情報を取得する。あるいは、各端末装置910が任意のタイミングで位置データを送信し、位置データ取得部102がそれを受信してもよい。なお、通信履歴データを取得する時刻又は期間と位置データを取得する時刻又は期間とは一致していてもよいし、一致していなくてもよい。
次に、演算部110は、取得した通信履歴データおよび位置データに基づいて、記憶部103に各データを記憶させる。又は、演算部110は、取得した通信履歴データおよび位置データに基づいて、記憶部103に記憶されているデータを更新する(ステップS12)。ステップS12の処理において、演算部110は、各データを記憶させるために、各データを格納するための記憶領域を決定し、決定した記憶領域に基づいて、各データを記憶部103に格納する。なお、ステップS10およびステップS11の処理を行った結果、新規のデータを取得しなかった場合、移動情報処理装置100は、データを更新せずに、ステップS13に進む。
次に、演算部110は、通信履歴データおよび位置データを取得する処理を終了させるか否かを判定する(ステップS13)。処理を終了すると判定しない場合(ステップS13:No)、演算部110は、ステップS10に戻り、通信履歴データおよび位置データを取得する処理を繰り返す。なお、ステップS13からステップS10に戻る前に、所定の時間休止(スリープ)してもよい。一方、処理を終了すると判定した場合(ステップS13:Yes)、演算部110は、通信履歴データおよび位置データを取得する処理を終了する。なお、上述の処理において、ステップS10とステップS11とは処理順序が逆であってもよいし、並行して行われてもよい。
次に、図7および図8を参照しながら、移動情報処理装置100が記憶したデータに基づいて移動情報を生成する処理について説明する。図7は、移動情報処理装置100が移動情報を生成し出力する一連の処理を示すフローチャートである。図7に示す処理は、移動情報処理装置100のユーザが、入力装置310を用いて所定の操作を行うことにより開始される処理であり、移動情報処理装置100が有する演算部110が行う処理を示している。
まず、ステップS21において、演算部110は、記憶部103の通信履歴データ記憶領域123から、予め設定された表示条件に基づいて、必要な通信履歴データを読み取る。なおステップS21は、演算部110が通信履歴データ記憶領域123から通信履歴データを取得する処理であるともいえる。すなわち、演算部110は通信履歴データ取得部101としても機能する。予め設定された表示条件とは、例えば、予め設定された期間又は予め設定されたグループIDである。これらの表示条件が予め設定されている場合には、演算部110は、設定されている条件に基づいて通信履歴データを読み取る。具体的に例を挙げると、表示条件に、「30分前から現在まで」のグループ1の端末装置に係る移動情報を表示すると設定されている場合には、演算部110は、通信期間の少なくとも一部が30分前から現在時刻までの期間に含まれ、かつグループ1に係る通信履歴データを特定して読み取る。なお、表示条件は初期設定として設定しておくこともできるし、別途、表示条件を設定する処理を行ってもよい。また、表示条件が「最新の所定数(例えば3つ)の通信に関する表示」となっている場合、通信履歴データの格納されているデータの中から、通信開始日時が新しい順に所定数(例えば3つ)のデータを選択し、これらを読み取ればよい。
次に、ステップS22において、演算部110は、処理対象の端末装置の集合である処理対象集合を作成する。具体的には、ステップS21で読み取った通信履歴データに含まれる端末ID(発信端末IDフィールドおよび受信端末IDフィールドに記録されている端末ID)の集合を作成し、処理対象集合とする。1つの端末IDが複数の通信履歴データに記録されている場合は、端末IDを重複なしで処理対象集合に登録する。
次に、ステップS23において、演算部110は、記憶部103の位置データ記憶領域122から、予め設定された表示条件、およびステップS22で作成した処理対象集合に基づいて、必要な位置データを読み取る。なおステップS23は、演算部110が位置データ記憶領域122から位置データを取得する処理であるともいえる。すなわち、演算部110は位置データ取得部102としても機能する。ここで、表示条件および処理対象集合に該当する位置データは、複数の端末装置に関する位置データであり、各端末装置の位置データは複数の時刻における位置情報を含む。このため、演算部110は、複数の端末装置それぞれの位置を時系列に示す位置データを取得するといえる。具体的には、演算部110は、位置データの日時(時刻)が、表示条件で指定された期間に含まれ、かつ端末IDが処理対象集合に含まれるデータを位置データ記憶領域122に格納された位置データの中から特定し、特定したデータを読み取る。表示条件で指定された期間は、「表示期間」あるいは「表示対象期間」とも称される。例えば、表示条件が「30分前から現在まで」であり、現在日時が「2017年8月10日10時00分00秒」の場合、表示期間は「2017年8月10日09時30分00秒から2017年8月10日10時00分00秒まで」になる。また例えば、表示条件が「最新の3つの通信履歴」である場合は、ステップS21で読み取った3つの通信履歴データ中の最も古い通信開始日時を時刻A1として特定し、3つの通信履歴データの中の最も新しい通信終了日時を時刻B1として特定する。そして、時刻A1より所定時間だけ前の時刻A2と、時刻B1より所定時間だけ後の時刻B2を算出し、「A2からB2」を表示期間とする。なお、上記の所定時間は同じであっても異なっていてもよい。そして、位置データの日時(時刻)が、表示期間に含まれ、かつ端末IDが処理対象集合に含まれるデータを位置データ記憶領域122に格納された位置データの中から特定する。
次に、ステップS24において、演算部110は、移動情報を出力する画面における出力範囲(出力する緯度、経度の範囲)と縮尺を決定する。具体的には、演算部110は、ステップS23で読み込んだ位置データから、最大緯度、最小緯度、最大経度、最小経度を算出する。そして、演算部110は、所定値α、βを用いて、(最小経度−α、最大経度+α)を経度出力範囲とし、(最小緯度−β、最大緯度+β)を緯度の出力範囲とし、これらが表示装置300の画面の所定領域に収まるように縮尺を決める。このような出力範囲と縮尺を決めることにより、表示条件に該当する全ての端末装置の移動軌跡を1つの画面に表示できるため、移動情報処理装置100のユーザは、表示条件に該当する全ての端末装置の状況を把握し易い。ただし、表示条件に該当する全ての端末装置の位置を1つの画面に表示する必要がない場合は、他の方法で出力範囲と縮尺を決定し、表示条件に該当する一部の端末装置の位置のみを1つの画面に表示してもよい。
次に、ステップS25において、演算部110(移動情報生成部104)は、読み取った各データに基づいて、移動情報を生成する。移動情報を生成する詳細処理については後述する。次に、ステップS26において、演算部110は、ステップS25で生成した移動情報を地図に重畳する。具体的には、まずステップS24で決定された出力範囲(緯度、経度)に該当する地図データを記憶部103に格納されている地図データ記憶領域124から読み出す。次に、ステップS24で決定された縮尺に従って、地図データを出力する画面上の座標に対応させる。そして、ステップS25で生成した移動情報と、画面に表示する地図データとを合成(重畳)して、それらを画面に表示するためのデータ(表示制御データ、表示制御情報)を作成する。なお、後述するように、移動情報を必ずしも地図に重畳する必要はなく、地図を用いずに移動情報を画面に表示することも可能である。この場合は、ステップS24およびステップS26を省略できる。その代わりにステップS25において、表示対象の移動軌跡の長さに応じて縮尺を決定すればよい。
次に、ステップS27において、移動情報出力部105は、ステップS26で生成した表示制御データを表示装置300に出力する。表示装置300は、例えば、図9に示すような画面を表示する。図9の詳細については後述する。また後述するように、通信I/F130を介して、移動情報処理装置100から端末装置910に表示制御データを出力し、端末装置910の表示部に移動情報を表示させることも可能である。
次に、ステップS28において、演算部110は、移動情報を更新するか否かを判定する。移動情報を更新すると判定した場合(ステップS28:Yes)、演算部110は、ステップS21に戻り再び通信履歴データを読み取る処理を行う。移動情報を更新すると判定するのは、例えば、表示条件が「30分前から現在」までとなっており、移動情報処理装置100が常に最新の移動情報を表示し続ける設定になっている場合である。
一方、移動情報を更新しないと判定する場合(ステップS28:No)、演算部110は、処理を終了する。移動情報を更新しないと判定する場合とは、表示条件に過去の時刻のみが用いられている場合である。例えば、現在日時が「2017年8月10日10時00分00秒」であり、表示条件が「2017年8月3日10時00分00秒から2017年8月3日13時59分59秒までの通信履歴」である場合は、更新しないと判定する。また、表示条件が、移動情報を1回のみ表示する設定になっている場合にも、更新しないと判定する。
次に、図8を参照しながら、移動情報を生成する処理の詳細について説明する。図8は、移動情報処理装置100が移動情報を生成する処理のフローチャートであり、図7のステップS25の詳細の処理である。以下では、音声通話による通信を行う通信システムを例にして説明する。音声通話による通信では、通信状態として「通話中」と「非通話中」の2つの状態がある。
まず、ステップS230において、演算部110は、ステップS21で読み取った通信履歴データの中から処理対象の通信(通信ID)を1つ選択する。ステップS21で読み取った通信履歴データに含まれる通信IDが1つの場合は、それを選択する。通信IDが複数ある場合は、その中から未処理の通信IDを1つ(例えば、通信IDの番号が小さい順に)選択する。
次に、演算部110は、ステップS230において選択された処理対象の通信に係る端末装置の中から未処理の端末装置(端末ID)を処理対象として1つ選択する(ステップS231)。処理対象の通信に係る端末装置とは、図4に示す通信履歴データにおいて、ステップS230で選択された通信IDの行の発信端末IDフィールド又は受信端末IDフィールドに登録されている端末装置である。
次に、演算部110は、選択した端末装置について、処理対象の通信の通信開始時の位置を算出する(ステップS232)。具体的には、通信開始時刻(日時)に最も近い時刻を持つ位置データを特定し、その位置を通信開始時点における位置とする。この方法は、位置データの登録頻度が高い場合に適する。あるいは、位置データの時刻が通信開始時刻に近い順に所定数(2以上)の位置情報を特定し、その特定した位置情報を用いて補間処理を実行し、通信開始時点における位置を算出してもよい。例えば、通信開始日時が「2017年08月01日10時10分00秒」であり、処理対象端末の位置情報として、「2017年08月01日10時09分00秒」における地点Aと「2017年08月01日10時11分00秒」における地点Bが記録されている場合、演算部110は、2つの位置を線形補間して、地点Aと地点Bの中点を通信開始時点における位置とする。また、「2017年08月01日10時09分30秒」における地点Aと「2017年08月01日10時11分00秒」における地点Bが記録されている場合、演算部110は、通信開始日時との時間差に応じて、地点Aと地点Bを結ぶ線分を1:2に分割する地点(内分点)を通信開始時点における位置とする。ステップS232において、演算部110は、通信開始日時に近い日時を持つ3個以上の位置情報を用いて、非線形補間を行ってもよい。
次に、演算部110は、選択した端末装置について、処理対象の通信の通信終了時の位置を算出する(ステップS233)。ステップS233において、演算部110は、ステップS232と同様に、通信終了時刻に最も近い時刻をもつ位置データを用いてもよいし、補間処理によって位置を算出してもよい。
次に、演算部110は、選択した端末装置について、通信期間の移動情報を生成する(ステップS234)。つまり、音声通話の場合、通話期間の移動情報を生成する。具体的には、演算部110は、選択された端末装置の通信開始時刻から通信終了時刻までの位置データを用いて通信期間の移動軌跡を示す線データ(ベクトルデータ)を生成する。この線データは、ステップS24で決定した出力範囲と縮尺に従って、端末装置の位置情報(緯度、経度)を出力する画面における座標に変換したものであり、移動軌跡に相当する線分を画面に描画するために必要な座標(X座標、Y座標による座標点)の集合である。また、この線データは、移動方向を示すために複数の座標(座標点)の順序情報を持っている。さらに、この線データは、移動軌跡に相当する線分やそれに関連する図形の表示形態(色、パターン、形状、太さ、大きさ等)を決める描画属性情報を持っている。演算部110は、通信期間に対応する線データの表示形態として第1表示形態を用いる。なお本実施の形態において、移動軌跡そのものを移動情報と呼ぶ場合もあるが、移動軌跡と後述するアイコン等を組み合せた情報、すなわち移動軌跡を含む情報を移動情報と呼ぶ場合もある。また、1つの端末装置の移動軌跡(または移動軌跡を含む情報)を移動情報と呼ぶ場合もあるが、複数の端末装置の移動軌跡(または移動軌跡を含む情報)の組合せを移動情報と呼ぶ場合もある。
次に、演算部110は、選択した端末装置について、非通信期間の移動情報を生成する(ステップS235)。つまり、音声通話の場合、通話が行われていない期間の移動情報を生成する。具体的には、演算部110は、選択された端末装置の位置データにおける時刻が、表示期間から処理対象の通信の通信期間を除外した期間に該当する位置データを特定し、特定した位置データに基づいて、非通信期間の移動軌跡を示す線データ(ベクトルデータ)を生成する。表示対象に含まれる通信が1つの場合、非通信期間は、表示期間の開始時刻から処理対象の通信の通信開始時刻までの期間と、処理対象の通信の通信終了時刻から表示期間の終了時刻までの期間である。この線データは、通信期間に対応する線データと同様に、出力する画面上の座標の集合であり、この線分やこれに関連する図形の表示形態を決める描画属性情報を持っている。演算部110は、非通信期間に対応する線データの表示形態として、通信期間と同じ第1表示形態を用いてもよいが、第1表示形態とは異なる第2表示形態を用いてもよい。つまり、通信状態に応じて、異なる表示形態を用いてもよい。演算部110は、上述した通信期間の移動情報と、非通信期間の移動情報とを合成して、ステップS231において選択した端末装置の移動情報を生成する。
次に、演算部110は、処理対象の通信に対する処理が完了したか否かを判定する(ステップS236)。具体的には、処理対象の通信に係る全ての端末装置に対して処理を行ったか否かを判定する。処理対象の通信に対する処理が完了した場合(ステップS236:Yes)、演算部110は、ステップS237に進む。完了したと判定しない場合(ステップS236:No)、演算部110は、再びステップS231に戻り処理を繰り返す。
ステップS237において、演算部110は、ステップS21で読み取った通信履歴データに含まれる全ての通信(通信ID)の処理が完了したか否かを判定する。完了した場合(ステップS237:Yes)、演算部110は、移動情報を生成する処理を終了する。完了していない場合(ステップS237:No)、演算部110は、ステップS230に戻って処理を繰り返す。
演算部110は、このように、端末装置ごとの移動情報を合成して一の画面に表示できるように処理する。また、演算部110は、移動情報のデータ属性を生成しておき、移動情報を選択して表示したり非表示にしたりできるようにしてもよい。ここで、データ属性とは、例えば、移動情報に係る通信IDである。また、通信IDに関連する端末IDやグループID等である。つまり、表示条件に該当する通信に係る端末装置のうち、任意に選択された端末装置の移動情報を表示したり、任意に選択された端末装置の移動情報を非表示にできるようにしてもよい。同様に、表示条件に該当する通信のうち、任意に選択された通信に係る端末装置の移動情報を表示したり、任意に選択された通信に係る端末装置の移動情報を非表示にできるようにしてもよい。
次に、図9を参照しながら、移動情報処理装置100が出力する移動情報の例について説明する。図9は、実施の形態1に係る移動情報の表示例を示す図である。図9は移動情報表示d800を示している。移動情報表示d800は、図1において示した表示装置300に移動情報を表示した場合の一例である。移動情報表示d800は、地図データと移動情報とが重畳された画像である。画像に含まれる地図は、上方が北、下方が南、左方が西、そして右方が東を示している。なお、本開示において以降例示する移動情報表示は、いずれも同様の方角を示すものとする。
図9に示す例では、ステップS21で読み取った通信履歴データに、通信ID「1」と通信ID「2」の2つの通信が含まれている。また、通信ID「1」および通信ID「2」はともに、端末A、端末B、端末Cによって実行された音声通話を用いたグループ通信(グループ通話)である。このため、移動情報表示d800には、端末A、端末B、および端末Cの移動情報が含まれている。これらの移動情報は、予め設定された表示期間における各端末装置の移動情報である。なお、図9では示していないが、移動情報処理装置100の位置を地図に示してもよい。
端末Aの移動情報を参照しながら詳細を説明する。道路に沿って破線により示されている表示d805は、端末Aの非通信期間における位置データに基づく軌跡を示している。ここでは、非通信期間の軌跡に対応する第2表示形態として、破線が用いられている。また、道路に沿って実線により示されている表示d807は、端末Aの通信期間における位置データに基づく軌跡を示している。ここでは、通信期間の軌跡に対応する第1表示形態として、実線が用いられている。なお、第1表示形態の色と第2表示形態の色を変えてもよい。例えば、通信期間の軌跡を「青色」で表示し、非通信期間の軌跡を「黒色」で表示してもよい。また、矩形枠内に数字が記載されている表示d806および表示d809は、通信IDを示すとともに、通信が開始された時刻における端末装置の位置を示している。矩形枠内に記載された数字は、通信IDを示している。このため、移動情報表示d800に表示されたそれぞれの軌跡の中で、どの軌跡が通信ID「1」に対応し、どの軌跡が通信ID「2」に対応するかを容易に判別できる。すなわち、移動情報表示d800は、同一の通信に対応する軌跡を判別可能なように(判別可能な形態で)表示する情報といえる。なお、各軌跡に対応させて通信IDを表示することに限らず、軌跡の色を通信ごとに変えたり、軌跡の描画パターンを通信ごとに変えることによって、同一の通信に対応する軌跡を判別可能な形態で表示することができる。
また、d806の矩形枠は1重線(実線)であり、端末Aは通信ID「1」の受信(着呼)端末であることを示している。一方、d809の矩形枠は2重線であり、端末Aは通信ID「2」の送信(発呼)端末であることを示している。Xマークの表示d808は、通信が終了した時刻における端末Aの位置を示している。実線表示の一端に設けられた矢印の先端である表示d810は、現在の時刻における端末装置の位置データを示している。すなわち、表示d810は、表示d810に係る端末装置である端末Aが、現在矢印の向きに移動中であることを示している。矢印の先端に設けられているバルーン形状の表示d811は、端末Aの端末IDを示している。端末B、端末Cについても同様の表示がなされている。このように、通信開始時における端末装置の位置と、通信終了時における端末装置の位置とを異なるマーク(矩形マークとXマーク)で表示する場合は、仮に第1表示形態と第2表示形態を同じにしても、通信期間と非通信期間とを判別することは可能である。ただし、通信期間の軌跡と非通信期間の軌跡は、異なる表示形態で表示することが望ましい。なお、このような矩形マーク、Xマーク、バルーン形状のマークなどを「アイコン」又は「端末アイコン」と呼ぶ場合もある。
移動情報表示d800において、端末Aは、表示期間の開始時点に地点p801に位置していたことが示されている。また、端末Aは、開始点である地点p801から非通話の状態で東へ移動し、通話1を行い、通話1を終了させた後、さらに東へ移動し、通話2を開始したことが示されている。さらに、端末Aは、通話2を開始した後にさらに東へ移動し、現在は通話2を継続しながら地点p802に位置していることが示されている。また、端末Bは、東へ移動しながら通話1を開始し、通話1の途中に南方に曲がり、通話1を終了させた後に東方へ曲がり、通話2を開始したことが示されている。また端末Bは、通話2を継続しながら、東へ移動中であり、現在はバルーン形状「B」に示す地点に位置することが示されている。端末Cは、南方に移動しながら通話1を開始し、通話1を終了し、さらに通話2を開始した後に東方に曲がったことが示されている。また端末Cは、通話2を継続しながら、東へ移動中であり、現在はバルーン形状「C」に示す地点に位置することが示されている。
また、移動情報表示d800は、ある通話を開始してから、その通話を終了するまでの期間の各端末装置が移動した距離を比較可能な情報である、といえる。また、移動情報表示d800は、ある通信(一の通信)に係る複数の端末装置の通信期間における移動速度を比較可能は情報である、といえる。例えば、端末Aが通話1の間に進んだ距離(表示d807の長さ)は、端末Cが通話1の間に進んだ距離(表示d811の長さ)より長い。通話1の時間は、各端末にとって共通の長さの時間であるため、移動情報表示d800は、通話1の期間に、端末Aが端末Cより速い速度で移動していたことを示している。
なお、ユーザが移動情報表示d800に対して所定の操作を行った場合に、移動情報表示d800に表示された特定の移動軌跡を一時的に非表示状態にしてもよい。例えば、ユーザが移動軌跡を示す表示d807を選択(マウス等でクリック)した場合に、表示d807を一時的に非表示にしてもよい。また例えば、ユーザが表示d811を選択した場合に、表示d811に対応する端末Aに係る移動情報(移動軌跡およびアイコン)を一時的に非表示にしてもよい。また例えば、ユーザが表示d806を選択した場合に、表示d806に対応する通信ID「1」の通信に係る移動情報(移動軌跡およびアイコン)を一時的に非表示にしてもよい。そして、移動情報が一時的に非表示になった状態で、ユーザが所定の操作を行った場合に、非表示の移動情報を表示状態に戻してもよい。例えば、ユーザが移動情報表示d800の所定領域(右下部分など)を選択(マウス等でクリック)した場合に、非表示にした移動情報を全て表示してもよい。また、ユーザが表示したい移動情報に対応する図形を選択し、それ以外の移動情報を非表示にしてもよい。例えば、ユーザが表示d811を選択した場合に、表示d811に対応する端末Aに係る移動情報(移動軌跡およびアイコン)のみを表状状態にし、それ以外の端末に係る移動情報を一時的に非表示にしてもよい。このような処理を行うことにより、移動情報表示d800に移動軌跡やアイコンが多数存在し、表示が煩雑になった場合でも、ユーザは所望の移動情報のみを表示させることができるので、ユーザの利便性が高くなる。
なお移動情報表示d800においては、端末装置の通信期間の移動軌跡を実線で表示し、非通信期間の移動軌跡を破線で表示しているが、移動軌跡を線ではなく他の形態で表示してもよい。例えば、移動軌跡を離散的な点(ドット)の集合を用いて表示してもよい。具体的には、通信期間における端末装置の位置を第1の表示色(例えば「赤色」)の点(ドット)で表示し、通信期間の移動軌跡としてもよい。また、非通信期間における端末装置の位置を第2の表示色(例えば「青色」)の点(ドット)で表示し、非通信期間の移動軌跡としてもよい。端末装置の位置を示す点として、位置データ記憶領域122に記憶された位置情報(緯度、経度)を表示画面の座標に変換した点を表示してもよいし、補間処理を行って、位置データ記憶領域122に記憶された位置情報よりも細かい間隔で点を表示してもよい。このような表示を行っても、所定の期間における端末装置の位置の変化を示すことができる。すなわち、移動軌跡は連続した線分に限定されず、点の集合または任意形状の図形の集合で構成されていてもよい。
図10に、移動情報処理装置100が出力する移動情報の別の例を示す。図10(A)および図10(B)は、地図を用いずに移動情報を出力する画面の一例である。図10(A)および図10(B)において、地図は表示されていないが、画面の上が北、下が南、右が東、左が西といったように、画面の向きと方位は対応している。このため、図10(A)および図10(B)は、ユーザが通信期間中の移動方向の変化を端末装置ごとに把握できるように表示している。図10(A)および図10(B)の上部には、通信ID、通信開始日時、通信終了日時など、この画面表示に関する通信の属性情報(通信属性情報)がそれぞれ表示されている。本図に示す例では、通信IDは「4」、通信開始日時は「2017年08月02日09時10分00秒」、通信終了日時は「2017年08月02日09時12分00秒」である。この通信(通信ID「4」)は、端末A、端末B、端末Cの3つの端末装置によってなされたグループ通信である。なお、地図を用いずに移動情報を出力する場合は、ステップS24およびステップS26を省略することができる。
図10(A)には、端末A、端末B、端末Cそれぞれの通信期間中の移動軌跡が太い実線で示されている。円形のアイコン(円形の枠)で囲まれた文字(「A」、「B」、「C」)は、端末IDを示している。なお、円形のアイコンは、端末IDに限らず、端末装置の名称や端末装置を使用するユーザ名を表示するものであってもよい。円形のアイコンは、通信開始時刻における各端末装置の位置を示しており、Xマークは、通信終了時刻における各端末装置の位置を示している。ただし、図10(A)および図10(B)では、図9とは異なり、端末装置ごとに独立した座標系を用いて移動情報が出力されている。例えば、端末Aの移動軌跡と端末Bの移動軌跡とは、各々の移動軌跡を区切る画面の縦線部分で不連続になっており、この2つの移動軌跡の間にある地点の情報は省略されている。初期状態においては、各端末装置の移動軌跡は、同一の縮尺で表示される。例えば、ステップS25において、表示対象の移動軌跡の中で最も長い移動軌跡が画面の所定領域の収まるように縮尺を決め、他の移動軌跡についても同じ縮尺を適用すればよい。このため、ユーザは、移動軌跡の長さを比較することにより、通信期間中における各端末装置の移動速度の違いを容易に把握できる。図10(A)の例では、端末Aの軌跡に比べて、端末Bおよび端末Cの軌跡が明らかに長い。そのため、ユーザは、端末Bおよび端末Cが端末Aに比べて速い速度で移動していたことを容易に把握できる。
図10(A)において、端末Aは、概ね東方向に進んでおり、端末Bは通信期間中に進行方向を東から南に変えており、端末Cは概ね南方向に進んでいる。例えば、この図に示す通信が音声通話であり、通話の途中で緊急事態が発生し、「全員、南方にある目標地点に急行せよ」といった指示がなされたとする。この場合、図10(A)は、端末Bがその指示を聞いてすぐに進行方向を南に変更したことを示している。従って、ユーザは、図10(A)に示す移動情報を見ることにより、端末Bが通信による指示(通信によるコミュニケーション)に従って行動したことを把握できる。また、ユーザは、端末Cが通信開始時に既に南方向に進んでいたため、そのまま進行方向を変えずに進んでおり、やはり通信による指示に従って行動したことを把握できる。一方、図10(A)は、端末Aが通信の途中で進行方向を変えることなく、同じように東向きに進んでいるため、通信による指示に従っていないことを示している。また、図10(A)は、端末Aの移動速度が他の端末に比べて遅いことを示している。従って、ユーザは、図10(A)を見ることにより、端末Aが通信による指示に従っていないと判断することができる。
図10(A)において画面の下部に表示されている「+」「−」のボタンは、軌跡の縮尺を変更するためのボタンである。ユーザが「+」ボタンを押すと、画面内の移動情報は、より拡大されて表示され、「−」ボタンを押すと、画面内の移動情報は、より縮小されて表示される。「+」「−」のボタンは、表示対象の端末装置ごとに、用意されている。従って、移動情報処理装置100は、端末装置ごとに独立して、表示の縮尺を変更することができる。このため、例えば、初期状態において軌跡の長さが短い端末装置や、軌跡の形状が複雑で分かり難い端末装置があったとしても、ユーザは、その端末装置の表示を拡大することができる。従って、移動情報処理装置100のユーザは、端末装置の移動状況をより正確に把握できる。
図10(B)は、通信期間中の移動情報に加えて、非通信期間中の移動情報を表示した例である。通信期間中の軌跡は、図10(A)と同様である。本図において、通信期間中の移動軌跡は太い実線で示されており、通信終了後の所定時間の移動軌跡が細い点線で示されている。すなわち、第1表示形態は「太い実線」であり、第2表示形態は「細い点線」である。また本図においては、画面上部に、この所定時間(表示対象である非通信期間の長さ)が「30秒」であることが表示されている。本図において、端末Bと端末Cの点線は、ほぼ同じ長さである。そのため、図10(B)は、この2つの端末が通信終了後(終了直後)もほぼ同じ速度で、南方向に移動していたことを示している。また、画面上部に表示された通信属性情報は、この通信の通信時間が「2分(120秒)」であることを示している。この通信時間は、表示対象の非通信期間「30秒」の4倍に相当する。本図において、端末Cの実線の軌跡の長さと、点線の軌跡の長さを比較すると、点線の長さは、実線の長さの4分の1よりも長い。そのため、図10(B)は、端末Cが通信終了後に通信期間中よりも移動速度を上げていることを示している。同様に、端末Bの点線の軌跡の長さは実線の軌跡の4分の1よりも長いので、端末Bが通信終了後に通信期間中よりも移動速度を上げているといえる。従って、図10(B)は、端末Bおよび端末Cが上述の「目標地点に急行せよ」という通信の指示に従って行動したことを示している。一方、図10(B)において、端末Aは、通信期間中の移動速度が他の端末より遅いだけでなく、通信終了後の移動速度が、通信中と比べて特に速くはなっていない。このため図10(B)は、端末Aが進行方向に関してだけなく、「目標地点に急行せよ」という通信の指示にも従っていないことを示している。
以上詳述したように、移動情報処理装置100は、通信によって情報共有がなされる複数の端末装置それぞれが、通信を契機として、どのように位置を変化させたか、ひいては端末装置を使用するユーザがどのように行動したかを容易に把握することができる移動情報を出力する。
従来技術においては、通信に係る各端末装置が使用するユーザが、通信を契機として、どのように行動したかを簡単に把握できる情報を出力できなかった。例えば、複数のユーザがある共通の目的地に向かっている状況において、通信によって目的地の変更が指示された場合、その通信の対象となったユーザのうち、どのユーザが指示に従って迅速に移動し、どのユーザが指示にどおりに移動しなかったか等を簡単に把握することができなかった。すなわち、通信に係る複数の端末装置それぞれの位置の変化を、比較し易い形態で分かり易く提示することができなかった。
一方、上述したように、本実施の形態に係る移動情報処理装置100は、そのような条件において、どのユーザが通信指示に従って行動し、どのユーザが通信指示に従って行動しなかったかを容易に把握できる情報を出力できる。
移動情報処理装置100は、ある1つの通信(一の通信、同一の通信)を行う各端末装置の相対的な移動速度の違いを容易に把握又は比較することができる移動情報を出力する。ユーザは、出力された各移動軌跡の長さの違いから、各端末装置の移動速度の違いを容易に把握できる。このような端末装置の移動速度の違いを比較可能とする出力は、「一の通信の通信時間(通信開始時刻および通信終了時刻)は、一の通信に係る全ての端末装置の間で共通な時間である」、という通信の特性を活用したものである。換言すると、実施の形態1は、複数の端末装置が共有する通信という「共有イベント」に基づく各端末装置の位置の変化を一画面に表示する移動情報処理装置等を提供することができる。
また、移動情報処理装置100のユーザは、表示装置300に表示された移動情報を観察することにより、各端末装置の動きを把握することができる。また、ユーザは各端末装置の動きに基づいて、各端末装置に対して新たな情報(指示等)を送ることができる。例えば、移動情報処理装置100のユーザは、音声通話による通信を端末装置と実行しながら、各端末装置の移動軌跡と現在位置を画面で確認できる。移動情報処理装置100のユーザは、端末装置のユーザが間違った目標地点に向かおうとしている等を把握した場合、進行方向を修正するための的確な指示(会話)をいち早く伝えることができる。
なお、移動情報処理装置100は、ある通信(一の通信)に係る全ての端末装置の移動情報を一の画面に出力する必要は必ずしもない。例えば、一の通信に係る端末装置が5台ある場合、移動情報処理装置100は、そのうちの3台の移動情報を1つの画面に出力し、残り2台の移動情報を別の画面に出力してもよい。例えば、移動情報処理装置100は、互いの距離が近い端末装置同士を集めて、3台と2台の2つのグループを作り、グループごとに画面出力を行ってもよい。このような出力をしても、一の画面に表示された2つの端末装置の移動情報を比較することにより、ユーザは、2つの端末装置の通信時点における移動状況の違いや移動速度の違いを容易に把握できる。すなわち、移動情報処理装置100は、一の通信に係る複数(2以上)の端末装置の移動情報を一の画面に出力すればよい。また、通信期間中の移動距離が所定の距離以上の端末装置、または通信期間中の移動距離が長い順に所定数の端末装置を選択し、その選択した端末装置の移動情報のみを出力してもよい。あるいは、通信期間中の移動距離が所定の距離以下の端末装置、または通信期間中の移動距離が短い順に所定数の端末装置を選択し、その選択した端末装置の移動情報のみを出力してもよい。
<実施の形態1の変形例>
次に、実施の形態1の変形例について説明する。実施の形態1の変形例では、移動情報処理装置100に接続された表示装置300ではなく、端末装置910が備える表示装置(表示部)に移動情報を表示する。実施の形態1と同様に、移動情報処理装置100は、ネットワーク回線900を介して端末装置910と各種のデータを交換する。移動情報処理装置100の構成は、実施の形態1と同様である。
図11は、端末装置910の備える機能を示すブロック図である。端末装置910は、制御部911、送受信部912、記憶部913、位置情報取得部914、音声入出力部915、操作部916、表示部917を有している。なお、端末装置910は、ハードウェア的には、通信I/F、CPU、メモリ、および表示装置などによって構成されている。
制御部911は、端末装置910全体の制御と演算処理を行う。送受信部912は、他の端末装置および移動情報処理装置100との間で、無線通信によってデータを交換する。記憶部913は、必要なデータを記憶する。位置情報取得部914は、GPS等の位置計測機能を内蔵しており、自己の位置(緯度、経度)を計測する機能を持つ。音声入出力部915は、マイク、スピーカ、音声処理回路等によって構成されており、音声通話を行う機能を持つ。操作部916は、ボタン、タッチパネル等で構成されており、ユーザからの操作指示を受け付ける。表示部917は、ディスプレイ、タッチパネル等で構成されている。
実施の形態1の変形例において、端末装置910の表示部に移動情報を表示するために、以下の2つの方式のいずれかを用いることができる。
(方式1)
方式1に係る端末装置910は、端末装置910が移動情報処理装置100から通信履歴データおよび位置データを取得し、端末装置910において移動情報を生成し、生成した移動情報を表示部917に表示する。すなわち、図6に示す処理は、移動情報処理装置100が実行するが、図7および図8に示す処理は、端末装置910が実行する。具体的にはまず、制御部911が、送受信部912を介して、移動情報処理装置100から通信履歴データおよび位置データを取得(受信)し、記憶部913に記憶する。つまり、制御部911および送受信部912は、通信履歴データ取得部および位置データ取得部として機能する。次に、制御部911は、記憶部913から必要なデータを読み出し、移動情報を生成し、表示部917に表示する。つまり、制御部911および記憶部913は、移動情報生成部として機能する。この方式において、移動情報処理装置100は、端末装置910が要求する必要なデータ(通信履歴データおよび位置データ)を端末装置910に提供するデータベースサーバとして機能する。端末装置910は、このようなデータベースサーバから、通信履歴データおよび位置データを取得する。地図データに関しては、移動情報処理装置100から取得してもよいし、さらに他のサーバから取得してもよい。この方式は、移動情報の生成に必要なデータを端末装置が持つため、多様な形態の画面表示を迅速に行うことができ、端末装置を使用するユーザの要求に柔軟に対応できる。
(方式2)
方式2に係る端末装置910は、移動情報処理装置100が作成した表示用のデータ(表示制御データ)を受信し、受信した表示用のデータを表示部917に表示する。例えば、まず端末装置910が移動情報処理装置100に表示制御データを要求するデータ(リクエストデータ)を送信する。移動情報処理装置100は、リクエストデータを受信すると、図7および図8に示す処理を実行する。ただし、ステップS27において、移動情報出力部105は、表示制御データを端末装置910に送信する。端末装置910は、表示制御データを受信し、表示部に表示する。この表示制御データは、移動情報をビットマップ形式又はベクトル形式で表したデータである。具体的には、制御部911は、送受信部912を介して、移動情報処理装置100から表示制御データを受信し、記憶部103に記憶するとともに表示部917に表示する。この方式は、端末装置910の処理量が少ないため、端末装置910の処理能力が低い場合であっても適用しやすい。
図12を参照しながら実施の形態1の変形例に係る表示例を説明する。本図においても図9と同様に、端末A、端末B、端末Cの3つの端末装置によって音声通話(通話1、通話2)が行われており、3つの端末装置の軌跡が表示されている。図12に示す移動情報表示d100は、表示d101〜d103が、実施の形態1に係る移動情報表示d800と異なる。本図は、端末Aがd100の表示を行っている端末装置である状況を示している。
表示d101は、三角形(△)の枠が2重線になっている。これは、表示d101に係る端末装置(端末A)が、移動情報表示d100を表示している端末であり、かつ通話1の発信端末であることを示すものである。すなわち、移動情報表示d100において、通話1の発信端末は、この画面を表示している端末Aである。また、表示d102は、三角形(△)の枠が1重線になっている。これは、表示d102に係る端末装置(端末A)が、移動情報表示d100を表示している端末であり、かつ通話2の受信端末であることを示すものである。すなわち、三角形(△)のアイコンは、画面表示を行っている端末装置の通信開始時の位置を示している。さらに、三角形の枠が2重線のアイコンは、その通信の発信端末であることを示し、三角形の枠が1重線のアイコンは、その通信の受信端末であることを示す。このように、移動情報表示d100は、画面表示を行っている端末装置(自端末装置)のアイコンが他の端末装置のアイコンと異なる表示形態となっている。これにより、端末Aのユーザは、画面に多くの端末装置が表示されている場合であっても、自端末装置を容易に識別できる。また、表示形態は、アイコンの形状だけでなく、色を変えて、自端末装置を識別し易くするものであってもよい。このような表示により、端末装置を使用するユーザは、過去および現在の通信に関して、自分が適切に行動したかを容易に検証できる。なお、移動情報表示d100において、通話2に係る端末Cのアイコンが矩形の2重線により表示されている。すなわち、移動情報表示d100は、端末Cが通話2の発信端末であることを示している。なお、端末Cにおいて表示される移動情報では、通話1に係る端末Cのアイコンは、三角形の1重線になり、通話2に係る端末Cのアイコンは、三角形の2重線になる。
表示d103は、バルーンが2重線になっている。これは、移動情報表示d100が表示d103に係る端末装置に表示されていることを示すものである。すなわち、移動情報表示d100は、端末Aが有する表示部917に表示されている画像である。このように、実施の形態1の変形例では、端末装置の表示部917に移動情報を表示させる。これにより、端末装置のユーザは、自己の位置および移動情報に加え、通信を行っている他の端末装置の位置および移動状況を把握することができる。
なお、当然ながら、上述した表示の表示態様はあくまで一例である。移動軌跡およびアイコンは、線の太さ、線の種類に代えて、表示の色、大きさ等により判別可能なように示されてもよい。また、端末IDごとに表示態様の異なる表示をしてもよい。例えば、端末Aを赤、端末Bを黄色、端末Cを緑、というように、表示図形の色を変えて示してもよい。また、端末IDごとに表示図形を登録しておき、登録した表示図形により端末IDを示してもよい。また、通信IDごとに表示態様の異なる表示をしてもよい。端末IDごとに表示態様を異なる表示とし、且つ、通信IDごとに表示態様の異なる表示をしてもよい。このような表示態様にすれば、通信IDと端末IDのそれぞれを識別することができる。
さらに、端末装置の移動速度に応じて、移動軌跡およびアイコンの表示形態が異なっていてもよい。例えば、時速4km未満の場合は「濃いグレー」、時速4km〜8kmの場合は「薄いグレー」、時速8km〜12kmの場合は「濃い青」、時速12km〜時速16kmの場合は「薄い青」、時速16km〜24kmの場合は「緑」といったように、移動速度に応じて軌跡の表示色は異なっていてもよい。また、速度として、通信期間および非通信期間それぞれにおける平均速度が用いられてもよい。この場合、通信期間および非通信期間に対応する軌跡は、それぞれ均一な色になる。また、通信期間と非通信期間で異なる色相の色を用い、さらに速度に応じて明度や彩度を変えてもよい。例えば、通信期間に対して赤系統の色、非通信期間に対して青系統の色を用いる。そして、速度が遅い場合には、それぞれ「彩度の低い(くすんだ)赤」と「彩度の低い(くすんだ)青」を用い、速度が速い場合には、それぞれ「彩度の高い(鮮やかな)赤」と「彩度の高い(鮮やかな)赤」を用いる。
また、速度は、通信期間における平均速度ではなく、より短時間における瞬間速度が用いられてもよい。この場合、通信期間に対応する軌跡は均一な色ではなく、複数の色が混在するグラデーションパターンとして表示される。例えば、上述の配色を使った場合、軌跡の表示は、通信開始時に近い部分が「濃いグレー」で、中間部分が「濃い青」で、通信終了時に近い部分が「緑」といったような形態になる。この場合、ユーザは、この端末装置が通信期間において、徐々に速度を上げたことが容易に分かる。非通信期間の表示についても同様である。
また、速度の絶対値を元に表示形態を変えるだけでなく、複数の端末装置の速度の相対的な関係を表示形態に反映させてもよい。具体的には、移動情報処理装置100は、通信に係る複数の端末装置の最大速度と最小速度とを算出し、最小速度から最大速度までを所定数の区間に分割して、その速度区間ごとに表示形態を変える。例えば、5台の端末装置のうち、端末Aが最大速度「時速85km」で移動し、端末Eが最小速度「時速5km」で移動している場合、移動情報処理装置100は、「時速5km」から「時速85km」までを「時速10km」間隔で8個の速度区間に分割し、速度区間ごとに異なる色で表示すればよい。あるいは、移動情報処理装置100は、速度の順序に応じて、表示色を決定してもよい。例えば、移動情報処理装置100は、5台の端末装置のうち、最も遅い端末Eの軌跡およびアイコンの表示色を「黒」とし、2番目に遅い端末Dの軌跡およびアイコンの表示色を「青」とし、最も速い端末Aに関する表示色を「赤」とする。
なお移動情報処理装置100においても、このように、移動速度に応じて、移動情報の表示形態を変える処理を行ってもよい。実施の形態1で説明したように、移動情報処理装置100は、一の通信に係る複数の端末装置の通信期間における移動軌跡を表示装置300に表示する。この際に、移動情報処理装置100が、速度に応じて移動軌跡および端末アイコンの表示形態を変えることにより、ユーザは、より直感的に端末ごとの移動状況を把握できる。
<実施の形態2>
次に、実施の形態2について説明する。
実施の形態2に係る移動情報処理装置は、移動情報の表示条件を設定する操作を受け入れる構成になっている点において、実施の形態1と異なる。図13は、実施の形態2に係る移動情報処理装置のハードウェア構成の例を示す図である。実施の形態2に係る移動情報処理装置200は、入力装置310および音声入出力装置320に接続している。また、移動情報処理装置200は、演算部210を有している。演算部210は、移動情報生成部104に加えて選択表示出力部211および表示条件受付部212を有している。
入力装置310は、例えばコンピュータ用キーボード(文字入力装置)、およびマウス等のポインティングデバイス(座標入力装置)などである。音声入出力装置320は、スピーカおよびマイクである。バスI/F140は、入力装置310から種々の入力信号を受け取り、受け取った入力信号を演算部110に供給する。バスI/F140は、音声入出力装置320に接続し、音声入出力装置320から音声データを受け取り得る。また、バスI/F140は、音声入出力装置320に接続し、記憶部103に記憶する音声データを音声入出力装置320に出力してもよい。
選択表示出力部211は、ユーザに表示条件を設定させるための表示データを生成する。選択表示出力部211が生成した表示データは、バスI/F140を介して表示装置300に出力される。ユーザは、表示装置300に示された表示に応じて、移動情報の表示条件を設定する。表示条件受付部212は、移動情報を生成するに際して入力装置310から入力された表示条件に関する情報を受け付ける。表示条件受付部212は、受け付けた情報を移動情報生成部104に供給する。移動情報生成部104は、供給された表示条件に関する情報に基づいて、記憶部103に格納されている情報を読み取り、読み取った情報を用いて移動情報を生成する。
図14を参照しながら、実施の形態2に係る移動情報処理装置200が行う処理について説明する。図14は、実施の形態2に係る移動情報処理装置が移動情報を出力する一連の処理を示すフローチャートである。図14に示すフローチャートは、ステップS30の処理を有する点において図7に示した実施の形態1に係るフローチャートと異なる。また、図14に示すフローチャートは、ステップS27の処理の後に行う処理(ステップS35)が図7に示した実施の形態1に係るフローチャートと異なる。従って、既に説明した処理については適宜説明を省略する。
まず、ステップS30において、演算部210は、生成する移動情報の表示条件を受け付ける。表示条件は、移動情報処理装置200を使用するユーザが決定する。表示条件には、表示モード、表示期間、および表示グループの内少なくとも一つが含まれる。すなわち、ユーザは、選択表示出力部211が出力した表示に基づいて、表示モード、表示期間、又は表示グループを決定する。決定した条件に関する信号は、入力装置310を介して表示条件受付部212に入力される。
表示モードは、ユーザにより選択された、「現在表示モード」又は「過去表示モード」のいずれかである。「現在表示モード」は、別途設定する過去の時刻から、最後に更新された通信履歴データ又は位置データを取得した時刻までの期間における移動情報を表示するモードである。「現在表示モード」が選択された場合、演算部210は、通信履歴データ又は位置データが更新される都度、移動情報を逐次更新する。これにより、ユーザは、現在継続中の通信を含めて、所定の時点から現在までの移動情報を知ることができる。「過去表示モード」は、別途設定する過去の時刻である第1時刻から、第1時刻より後の時刻であって、別途設定する過去の時刻である第2時刻までの期間における移動情報を表示するモードである。「過去表示モード」が選択された場合、演算部210は、移動情報を逐次更新する処理を行わない。
本実施の形態においては、移動情報処理装置200のユーザ(使用者)が表示期間を設定する。表示期間の開始時刻を第1時刻と称し、表示期間の終了時刻を第2時刻と称することもある。表示モードが「現在表示モード」の場合、ユーザは第1時刻を設定し、移動情報処理装置200は、現在時刻を第2時刻とする。表示モードが「過去表示モード」の場合、ユーザは第1時刻および第2時刻を設定する。移動情報処理装置200は、第1時刻から第2時刻までに対応する通信履歴データおよび位置データを用いて、移動情報を生成する。
表示グループとは、移動情報を生成する対象となるグループ(グループID)である。移動情報処理装置200は、ユーザがグループIDを選択することにより、選択されたグループIDに係るグループの移動情報を生成する。なお、選択されるグループは一つに限らず、複数であってもよい。また、例えば二者間通信に係る移動情報を表示させる場合には、ユーザは、グループID「0」を選択すればよい。すなわち、移動情報処理装置200は、二者間通信およびグループ通信に係る移動情報を生成し、表示することができる。
ステップS30に続く、ステップS21からステップS27は、実施の形態1と同じである。ステップS35において、演算部210は、移動情報を更新するか否かを判定する。ここでは、ユーザが「現在表示モード」を選択した場合、演算部210は、移動情報を更新すると判定する(ステップS35:Yes)。この場合、演算部210は、ステップS21に戻り、処理を繰り返す。一方、ユーザが「過去表示モード」を選択した場合、演算部210は、移動情報を更新しないと判定する(ステップS35:No)。この場合、演算部210は、一連の処理を終了させる。
次に、図15を参照しながら、移動情報処理装置200が出力する移動情報の例について説明する。図15は、実施の形態2に係る移動情報の表示例を示す図である。図15に示す移動情報表示d130は、表示条件を示している点において、実施の形態1に係る移動情報表示d800と異なる。移動情報表示d130は、表示装置300に移動情報を表示した場合の一例を示している。移動情報表示d130は、表示条件を示す表示d131〜d134を含んでいる。表示d131は、ユーザが指定した表示モードを示している。表示d131には「現在」と表示されている。すなわち、移動情報表示d130の表示モードは、現在表示モードである。現在表示モードでは、逐次更新される通信履歴データおよび位置データに基づいて移動情報が更新されることを示している。表示d132は、ユーザが指定した表示期間の内の開始点を示している。表示d132には「30分前」と表示されている。すなわち、移動情報表示d130は現在時刻の30分前を開始点とする移動情報が表示されている。もちろん、「30分前」に限らず、「3時間前」、「10分前」など任意の時間を指定できる。また、過去の日時を指定してもよい。なお、過去表示モードを選択した場合は、ユーザは、表示d132に過去の日時、例えば「2017年8月3日10時00分00秒」などを入力する。
表示d133は、表示期間の内の終了点を示している。表示d133には「現在」と表示されている。現在表示モードを選択した場合は、表示d133には自動的に「現在」と表示される。この場合、ユーザは終了点を指定できない。なお、過去表示モードを選択した場合は、ユーザは、表示d133に、d132よりも後の過去の日時、例えば「2017年8月3日13時59分59秒」などを入力する。表示d134は、ユーザが指定した表示条件の内の表示グループを示している。表示d134には「1」と表示されている。すなわち、移動情報表示d130が表示しているのはグループ1に関する移動情報である。このように、ユーザが表示条件を設定することにより、移動情報処理装置200は、ユーザが所望する表示条件に応じた移動情報を出力することができる。
また、移動情報処理装置200は、音声通話のための音声入出力装置320を有する。従って、ユーザは、表示装置300に表示される移動情報に係る通話に参加してもよい。 なお、図15では示していないが、移動情報処理装置200を示すアイコンを、移動情報処理装置200の位置に対応させて地図上に示してもよい。またさらに、移動情報処理装置200が発信した通信に係る移動情報を表示する際に、移動情報処理装置200のアイコンの枠を二重線にする等、移動情報処理装置200が発信したか否かに応じて、アイコンの表示形態を変えてもよい。
表示モードが現在表示モードの場合、移動情報処理装置200のユーザは、地図データに重畳された移動情報によって、現在の通話の開始時点から現在までの端末装置の移動状況および現在位置を詳細に把握できる。また、現在の通話における移動状況だけでなく、前回の通話など過去の通話における移動状況も容易に把握できる。このように把握した各端末装置の状況を踏まえたうえで、通話を行うことができる。このため、ユーザは各端末装置に対して、適切な指示を出せる。例えば、各端末装置の今後の移動方向、移動速度、目的地などについて適切な指示を出すことができる。例えば、「端末Bは、前回の通話を受信した地点まで至急戻って待機せよ」、「端末Cは、現在の通話中に曲がった交差点を逆に曲がれ」といったように、現在および過去の通話時における各端末装置の位置情報に基づいて通話指示を出せるため、地名や緯度経度を事細かく説明せずに、より簡潔な表現で通話指示を出せる。また、各端末が徒歩や自転車で移動しているような場合に、各端末のユーザの体力を考慮し、直近(例えば、30分前から現在まで)の移動距離が多い端末を移動の対象から除外し、直近の移動距離が少ない端末を移動させるなど、きめ細かな通話指示が可能になる。
また、表示モードが過去表示モードの場合、移動情報処理装置200のユーザは、各端末装置の過去の通話期間の位置や動き、過去の非通話期間における位置や動き、などを詳細に把握することができる。このため、どの端末装置が通話指示に従い、どの端末装置が通話指示に従わなかったか等を容易に検証できる。さらに、過去の通話における自分の通話指示が適切であったか否か等を後から検証できる。例えば、「ある通話(通話1)においては、自分の通話指示に従って行動した端末ユーザが多かったが、別の通話(通話2)においては、自分の通話指示に従って行動した端末ユーザが少なかった。この原因として、通話2の指示があいまいで、それを聞いた端末ユーザは正確な意味を理解できなかったようだ。今後の通話指示は、より明確な表現にすることを心がけよう」といったように、過去の通話に係る移動情報を検証し、今後の通話指示の改善に役立てることができる。また「端末Aは通話指示に従って適切に移動したが、端末Bは通話指示の意味を取り違えて、適切に移動しなかった。端末Bのユーザは、通話の用語を理解するための前提知識が不足していたようなので、それを教えよう」といったように、個々の端末装置ごと(個々のユーザごと)に、今後の通話(コミュニケーション)の改善策を検討できる。
また、移動情報処理装置200は、通話に係る音声データを記憶することもできる。この場合、ユーザは、過去表示モードにより移動情報を表示しながら、移動情報に対応した音声データを再生することができる。例えば、移動情報処理装置200は、通話期間に対応する軌跡や通話開始を示す端末アイコンを選択(マウス等でクリック)する操作により、その通話の音声データを再生してもよい。また、ユーザが通話期間に対応する軌跡の途中(中間点)をクリックした場合、移動情報処理装置200は、クリックされた点(座標)に応じて、通話の途中から音声データを再生してもよい。その際、移動情報処理装置200は、クリックされた座標を端末装置の位置(緯度、経度)に対応させ、その位置に端末装置が存在した時点の音声データを再生してもよい。あるいは、移動情報処理装置200は、クリックされた座標によって、通話期間の軌跡が内分される比率を算出し、算出した比率により通話開始時刻から通話終了時刻までを内分した場合の時刻を算出し、算出した時刻における音声を再生してもよい。
また、移動情報処理装置200は、音声の再生箇所を示すカーソル等の図形を通話期間の軌跡に重畳して表示してもよい。つまり、通話音声を再生しながら、再生時間の経過に従って軌跡上のカーソルの位置を変更(更新)する。音声の再生箇所を示すカーソルの図形を、全ての軌跡上に表示し、それぞれのカーソルの位置を再生時間の経過に応じて更新してもよい。また、ユーザが選択した軌跡のみにカーソルを表示し、カーソルの位置を更新してもよい。またこの際に、ユーザが選択した軌跡以外の軌跡を一時的に非表示にしてもよい。
このような構成により、移動情報処理装置200は、指定した表示条件に合致する通話に係る端末装置の位置データの変化を、通話音声と同期させることができる。これによりユーザは、非常に直感的に端末装置の位置データの変化を把握することが可能である。例えば、通話期間中あるいは通話直後の軌跡において、端末装置の位置の急激な変化が示されている場合、ユーザは、その通話音声を最初からあるいは軌跡の変化に該当する箇所から容易に再生することができる。このため、移動情報処理装置200のユーザは、端末装置のユーザの行動に変化が生じた原因を把握し易い。また、通話内容に従って、各端末装置が行動したか否かを後から容易に検証できる。
なお、移動情報を表示する条件は、上述の条件に限られない。例えば、表示グループは、複数選択されてもよい。この場合、複数選択されたグループは、「OR条件」として扱われる。あるいは、移動情報処理装置200は、表示対象となる端末装置の端末ID(表示端末)を任意の数だけユーザに指定させてもよい。また、移動情報処理装置200は、表示グループと表示端末をユーザに両方指定させてもよい。この場合、指定された複数のグループID同士は「OR条件」で結合され、指定された複数の端末ID同士は「OR条件」で結合され、グループIDと端末IDは「AND条件」で結合されて、通信履歴データおよび位置データの取得が行われる。
また、選択表示出力部211が位置(緯度、経度)および期間に関する条件をユーザに入力させるための表示データを生成し、表示条件受付部212は、入力装置310を介して、ユーザが入力した条件を受け付けてもよい。そして、入力された条件に合致する位置データを有する端末装置に係る移動情報を表示してもよい。このようにすれば、例えば、特定の期間において特定のエリアで通信を実行した端末装置のみを表示対象にすることができる。また、選択表示出力部211が端末の種別(発信端末または受信端末)をユーザに選択させるための表示データを生成し、発信端末のみ、または受信端末のみを表示対象にしてもよい。また、選択表示出力部211が通信期間の長さ(通信時間)に関する条件をユーザに入力させるための表示データを生成し、入力された条件に合致する通信を表示対象にしてもよい。このようにすれば、例えば、通信時間が所定時間以上の通信に係る端末装置の移動軌跡のみを表示することができる。また、選択表示出力部211が通信に係る端末装置の数に関する条件をユーザに入力させるための表示データを生成し、入力された条件に合致する通信を表示対象にしてもよい。このようにすれば、例えば、通信に係る端末装置の数が所定数以上の通信や、所定数以下の通信を表示対象にできる。
以上詳述したように、実施の形態2では、ユーザが移動情報の表示条件を細かく設定できる。このため、移動情報処理装置200は、ユーザの所望の移動情報のみを画面に表示することができ、不必要な移動情報により画面が見難くなることを低減できる。
<実施の形態3>
次に図16および図17を参照しながら、実施の形態3について説明する。実施の形態3に係る移動情報処理装置200は、機能ブロックおよびハードウェア構成については実施の形態2に係る移動情報処理装置と同じである。実施の形態3に係る移動情報処理装置200は、移動情報の表示態様が実施の形態2に係る移動情報処理装置と異なる。
例えば、表示条件に設定されている期間の全ての移動情報を表示すると、不要な情報が多く含まれた煩雑な表示になってしまうおそれがある。そこで、実施の形態3に係る移動情報処理装置200において、演算部210は、通信の開始に起因する予め設定された時点から、通信の終了に起因する予め設定された時点までの移動情報を生成する機能を有している。以下の説明においては、通信の開始に起因する予め設定された時点として、通信の開始時点(通信開始時刻)を用いるが、他の時点を用いることもできる。例えば、通信開始時刻より所定時間だけ前の時点(通信開始時刻の20秒前の時刻など)を用いてもよい。通信の終了に起因する予め設定された時点としては、通信が終了してから予め設定された期間(所定期間Tb)が経過した時点(第2終了時点)を用いる。
実施の形態3に係る演算部210は、通信が開始された時点から、第2終了時点までの移動情報を生成する機能を有している。この所定期間Tbは、ユーザが通信に起因する移動を行う場合には、遅くとも第2終了時点までに移動を開始するだろうという想定に基づいて設定される。以下の説明においては、この所定期間Tbを「2分」とするが、この値に限定されるものではない。
図16を参照しながらより具体的に説明する。図16は、実施の形態3に係る移動情報の表示例を示す図である。図16に示す移動情報表示d140は、表示モードが過去表示モードである。また、移動情報表示d140において、表示d141にユーザによって指定された表示期間の開始日時である「2017年8月1日10時00分00秒」が示されている。また、表示d142にユーザによって指定された表示期間の終了日時である「2017年8月1日10時08分00秒」が示されている。つまり、表示期間は、「2017年8月1日10時00分00秒」から「2017年8月1日10時08分00秒」までである。また、表示グループとして、グループ3が選択されている。すなわち、グループID「3」によって実行されたグループ通信であり、かつ、指定された表示期間に通信期間および通信終了後の所定期間が含まれる通信が、表示対象として選択される。なお、図16および図17は、音声通話による通信がなされた例を示している。
図16の移動情報表示d140は、表示条件に該当する通信「1」を実行した端末装置のうちの少なくとも一部である3台の端末装置、端末A、端末B、端末Cの移動情報が表示されている。上述したのと同様に、バルーン形状のアイコン内の文字は、端末ID又は端末名称である。移動情報のうち、網目模様が施された帯状の表示d143は、通信の発信端末(発呼端末)の通信期間における移動軌跡を示している。よって、移動情報表示d140は通信「1」が端末Aから発信された通信であることを示している。また、斜線模様が施された帯状の表示d144は、通信の受信端末(着呼端末)の通信期間における移動軌跡を示している。よって、移動情報表示d140は、通信「1」において少なくとも端末Bと端末Cが受信端末だったことを示している。また、白い帯状の矢印d145は、通信終了時点から第2終了時点までの非通信期間(例えば2分間)の移動軌跡である。なお、通信期間と非通信期間の表示形態を同じにしてもよい。例えば、矢印d145を帯状の表示d143と同様に網目模様で表示してもよい。この場合は、通信に起因する端末装置の移動が通信開始時点から第2終了時点までの期間の任意の時点に生じると想定し、通信期間と所定期間Tbを区別せずに扱っている。
図16の移動情報表示d140において、上述の表示条件に含まれる移動情報が表示されている。すなわち、表示グループ3に含まれる端末A、端末B、端末Cの通信「1」に係る位置データが地図データに重畳して表示されている。矩形のアイコンは、通信開始時点における各端末装置の位置を示しており、矩形内部の文字は、通信ID又は通信を識別可能な通信名称である。端末Aの移動情報は、端末Aが、地点p141において通信「1」を開始し、東方へ移動しながら、地点p142において通信「1」を終了したことを示している。また、端末Aの移動情報は、端末Aが、地点p142において通信「1」を終了した後に、北方へ曲がり移動を続けたことを示している。同様に、端末Bの移動情報は、端末Bが東方へ移動しながら通信「1」を行い、通信「1」の終了後に、端末Bも北方へ曲がり移動を続けたことを示している。また、端末Bの移動情報は、通信終了後の端末Bの移動速度が端末Aより遅いことを示している。また、端末Cは、東方へ移動しながら通信「1」を行い、通信「1」の終了後も北方へ曲がらずに東方へ移動を続けていることが示されている。
例えば、端末Aのユーザが、通信「1」において「北方へ移動せよ」という指示を出した場合に、移動情報表示d140は、端末Bのユーザが指示通りに行動したことを示している。一方、移動情報表示d140は、端末Cのユーザが端末Aのユーザの指示に従わなかったことを示している。移動情報処理装置200のユーザは、移動情報を見て、各端末装置が通信により適切な行動を行ったか否かを検証することができる。
このように、実施の形態3に係る移動情報処理装置200は、通信に係る各端末装置の位置変化を把握することが可能な移動情報を生成することができる。また、移動情報処理装置200は、通信期間の開始に起因する予め設定された時点から、通信期間の終了に起因する予め設定された時点までの移動情報を生成することにより、移動情報の表示が煩雑になることを抑制することができる。
次に、図17を参照しながら実施の形態3に係る別の表示例について説明する。図17に示す例において、移動情報処理装置200は、表示条件に合致する2つのグループ通信の内、前に行われたグループ通信と、後に行われたグループ通信との間の非通信期間についての処理が、実施の形態2と異なる。すなわち、前に行われたグループ通信と、後に行われたグループ通信との間の非通信期間が所定期間Tbより長い場合、移動情報処理装置200は、複数の通信の間に位置する非通信期間の一部の軌跡が含まれないように移動情報を生成する。
図17に示す移動情報表示d150は、表示モードが過去表示モードである。また、移動情報表示d150において、表示d151にユーザによって指定された開始時刻「2017年8月1日10時00分00秒」が示されている。また、表示d152にユーザによって指定された終了時刻「2017年8月1日11時00分00秒」が示されている。つまり、表示期間は、「2017年8月1日10時00分00秒」から「2017年8月1日11時00分00秒」までである。また、表示グループは、グループ3が選択されている。
図17に示す移動情報表示d150は、表示条件に合致する通信「1」および通信「2」が示されている。通信「1」に係る端末装置は、端末A、端末B、および端末Cである。通信「2」に係る端末装置は、端末A、端末B、端末C、および端末Dである。通信「1」と通信「2」との間は、所定期間Tbよりも長い。従って、移動情報表示d150において、通信「1」と通信「2」との間の一部の非通信期間は、移動情報に含まれていない。
例えば、移動情報表示d150は、端末Aが地点p151から東方へ移動しながら通信「1」を開始し、通信「1」の終了後に北方へ曲がり移動を続けたことを示している。その後、端末Aは、地点p152において通信「2」を開始しているが、p152の矩形アイコンからは軌跡を示す矢印線が全く出ていない。これは、端末Aが通信「2」の期間中および通信終了後の所定期間Tbにおいて、地点p152から移動せずに停止したままであることを示している。このように、停止状態もしくは移動量が少ない端末装置については、移動軌跡を含まない移動情報が生成される。なお、端末Aの通信「1」における通信期間および通信「2」における通信期間はいずれも網目模様が施された表示である。すなわち、端末Aは、通信「1」および通信「2」の発信端末である。
端末Bは、南方へ移動しながら通信「2」を行っているが、軌跡を示す矢印線が斜線パターンだけであり、白地の部分が存在しない。また矢印線の先端に矩形図形が表示されている。これは、端末Bが通信「2」の終了後の所定期間Tbにおいて移動せず、停止していたことを示している。端末Cは、東方へ移動しながら通信「2」を行い、通信「2」の終了後も東方への移動を継続している。端末Dは、通信開始を示す矩形アイコンが斜線パターンとなっており、矢印部分は斜線パターンがなく、全て白地の部分である。これは、端末Dが停止した状態で通信「2」を行い、通信「2」の終了後に、東北東へ移動を開始したことを示している。
このように、移動情報表示d150には、通信終了後の所定期間Tbの移動軌跡が含まれているが、それ以外の非通信期間の移動軌跡は含まれていない。このような表示形態を採用することにより、移動情報処理装置200は、移動情報の表示が煩雑になることを抑制しつつ、複数の通信それぞれに係る各端末装置の位置データの変化を容易に把握可能な移動情報を出力する。なお、通信終了後の所定期間Tbを通信期間の長さに基づいて設定してもよい。例えば、通信期間と同じ長さにしてもよい。このような設定を用いることにより、端末装置の通信期間における移動速度と、通信直後の所定期間Tbにおける移動速度との違いを容易に把握することができる。すなわち、2つの期間の長さが同じであるため、移動軌跡の長い期間の移動速度の方が、速いと判定できる。また、通信終了後の所定期間Tbの長さを通信期間の1/2倍や2倍にしてもよい。
本実施の形態において、通信終了後の所定期間Tbは、通信に係る全ての端末装置にとって共通の長さの時間であり、この所定期間の移動軌跡の長さを比較することにより、通信終了直後の各端末装置の移動速度の違いを容易に把握できる。このように、通信期間という各端末装置に共通な時間における移動軌跡だけでなく、通信終了後の各端末装置に共通な時間における移動軌跡を表示するため、通信期間における各端末装置の移動速度の違いだけでなく、通信終了後の各端末の移動速度の違いを容易に把握できる。このように、移動情報表示d150を観察することにより、移動情報処理装置200のユーザは、通信に係る複数の各端末装置の通信期間中および通信終了後の移動状況を容易に把握することができる。
本実施の形態において、通信期間の移動軌跡を第1表示形態で表示し、通信終了後の所定期間Tbにおける移動軌跡を第2表示形態で表示しているが、他の方法を用いてもよい。例えば、通信期間の移動軌跡を第1表示形態で表示し、通信終了後の所定時間Tbにおける移動軌跡を第2表示形態で表示し、通信開始直前の所定時間Ta(例えば30秒)における非通信期間における移動軌跡を第3表示形態で表示してもよい。第1〜第3表示形態ごとに、線種、線の太さ、表示色などを設定すればよい。このような表示にすれば、通信前後における端末装置の移動状況をより明確に示すことができる。
<実施の形態4>
次に、実施の形態4について説明する。実施の形態4に係る移動情報処理装置200は、機能ブロックおよびハードウェア構成については実施の形態2に係る移動情報処理装置と同じである。実施の形態4に係る移動情報処理装置200は、通信履歴データにおける通信IDの扱いが実施の形態2に係る移動情報処理装置と異なる。
例えば、設定された表示条件に多数の通信が含まれる場合に、多数の通信の移動情報を表示すると、煩雑な表示になってしまうおそれがある。また、地図の縮尺が小さい場合や通信期間の長さが短い場合などに、通信期間の移動軌跡の形状が判別し難くなるおそれがある。そこで、実施の形態4に係る移動情報処理装置200は、関連性の高い複数の通信をまとめて、仮想的な1つの長い通信(統合通信)として扱い、統合通信に関する移動情報を生成する。なお、統合通信に係る処理は、例えば図13に示したハードウェア構成の内、演算部210が行う。演算部210は処理結果を記憶部103に記憶させる。関連性の高い複数の通信をまとめる方法として、以下の2つの方法のうちのいずれかを用いることができる。
(方法1)
方法1において、演算部210は、まず、通信履歴データ記憶領域123に記憶された通信履歴データから、通信に係る端末装置の集合が同じである通信を特定する。この際、演算部210は、発信端末と受信端末とを区別しない。例えば、通信「1」の発信端末が端末Aで、受信端末が端末Bと端末Cであり、通信「2」の発信端末が端末Cで、受信端末が端末A,端末Bである場合、この2つの通信は、通信に係る端末装置の集合が同じ通信であると特定される。同様の処理を繰り返すことにより、3つ以上の通信が、端末装置の集合が同じ通信であるとして特定される場合もある。次に、演算部210は、特定した各通信を要素とする通信の集合を作成する。例えば、通信「1」および「2」が、端末A、端末B、端末Cによって構成され、通信「3」〜「5」が、端末A、端末B、端末Dによって構成されている場合、第1の通信の集合は、通信「1」と「2」を含み、第2の通信の集合は、通信「3」〜「5」を含む。次に、演算部210は、通信の集合それぞれを対象にして、時間的に隣接する2つの通信(先の通信および後の通信)の通信終了日時(先の通信の終了日時)と、通信開始日時(後の通信の開始日時)との時間差を算出する。そして、この時間差が所定値以下である場合に、演算部210は、2つの通信の関連性が高いと判定し、その2つを統合する。なお、この所定値を「統合閾値」とも称する。また、演算部210は、統合された通信の終了日時と、時間的に隣接する次の通信の開始日時との時間差を用いて、同様な判定を行う。演算部210は、このような処理を特定された通信の集合に対して繰り返し行う。従って、3つ以上の通信によって1つの統合通信が形成される場合もある。方法1は、音声通話、映像通話、チャットなどセッションを使用する通信に適している。つまり、1つの通信の通信期間がある程度の長さをもつ通信に適している。
(方法2)
方法2は、演算部210が通信に係る端末装置の集合が同じ通信を特定し、通信の集合を作成するところまでは、方法1と同じである。方法2において、演算部210は、通信の集合それぞれを対象にして、時間的に隣接する2つの通信(先の通信および後の通信)の通信開始日時(先の通信の開始日時)と、通信開始日時(後の通信の開始日時)との時間差を算出する。そして、演算部210は、この時間差が所定値以下である場合に、2つの通信の関連性が高いと判定し、その2つを統合する。つまり、方法2では、演算部210は、通信の終了日時を使用しない。なお、この所定値を「統合閾値」とも称する。また、方法2は、方法1と同様に、3つ以上の通信によって1つの統合通信が形成される場合もある。方法2は、メールやショートメッセージ等のセッションを使用しない通信に適している。このような通信では、1回の通信時間(テキストメッセージの送信時間)は、一般的に数秒以下と大変短いので、通信開始時刻(日時)を利用するだけでよい。方法1および方法2は、通信に係る端末装置の集合が同一であり、かつ時間的に隣り合った通信それぞれに開始時刻に基づいて、2つ以上の通信の関連性を判定し、関連性が高いと判定した通信を統合する処理であるといえる。
図18を参照しながら、方法1を具体的に説明する。図18は、音声通話による通信の通信履歴データの例を示す図である。本図に示すように、実施の形態4に係る通信履歴データは、グループID、通信ID、統合通信ID、発信端末ID、受信端末ID、通信開始日時、および通信終了日時のフィールドによって構成されている。このうち、統合通信IDは、ステップS10を実行した段階では空白(NULL)状態である。実施の形態4では、ステップS12において、以下に説明する処理を行って、統合通信IDを作成し、通信履歴データ記憶領域123に記憶する。なお説明を簡潔にするため、図18に例示するデータは、全てグループ通信の履歴であり、グループIDが同じ通信は全て、通信に係る端末装置の集合が同じであるとする。つまり、グループID「1」の通信は、全て同じ端末装置の集合(端末T00、T01、T02、およびT50)によって実行されている。グループID「2」についても、同様である。もちろん、通信に係る端末装置の集合を特定すれば、二者間通信に対しても同様に統合通信を形成できる。以下の説明では、統合閾値が3分と設定されている。
図18に示す表の1行目には、グループIDとしてグループ1、通信IDとして通信1010、統合通信IDとして統合通信A000が示されている。また、通信1010の終了日時は、「2017年8月3日10時00分20秒」である。2行目には、グループ1の通信1011が示されている。通信1011の通信開始日時は「2017年8月3日10時00分25秒」である。すなわち、通信1010が終了した5秒後に、通信1011が開始されている。つまり、通信1010と通信1011との間の非通信期間は5秒である。
このような場合、演算部210は、通信1010と通信1011に対して共通の統合通信IDを付与する。上述した例においては、通信1010と通信1011は、いずれも統合通信A000が付与されている。同様に、通信1012、通信1013も統合通信A000が付与されている。統合通信A000の通信開始日時(統合通信開始日時)は通信1010の通信開始日時となり、通信終了日時(統合通信終了日時)は、通信1013の通信終了日時となる。すなわち、統合通信の通信開始日時は、統合通信に含まれる最初の通信の通信開始日時であり、統合通信の通信終了日時は、統合通信に含まれる最後の通信の通信終了日時である。
一方、通信1013の通信終了日時は、「2017年8月3日10時01分50秒」である。そして、通信1013の次に開始された通信1014の通信開始日時は、「2017年8月3日10時10分00秒」である。つまり、通信1013と時間的に隣接する通信1014との間の非通信期間は「8分10秒」であり、統合閾値である3分より長い。このため、通信1014には、新たな統合通信ID「A001」が付与される。
なお、図18に示すように、統合通信IDは、発信端末IDが異なる通信IDに対しても、共通の統合通信IDが付与される。従って、移動情報の統合通信IDに発信端末を付与する場合には、例えば、統合通信の最初の通信における発信端末を、統合通信に係る発信端末とすればよい。あるいは、統合通信に係る発信端末を、統合通信における発信時間が最も長い端末にしてもよい。また、統合通信に係る発信端末を、統合通信における発信回数が最も多い端末にしてもよい。
統合通信による移動情報を生成する場合、移動情報処理装置200の演算部210は、図7および図8に示す各処理ステップにおいて、「通信ID」を「統合通信ID」に置き換えて処理を行えばよい。統合通信の通信期間は、統合通信に係る複数の端末同士が、頻繁に通信を行っている(通信の頻度が高い)期間であるといえる。このため、この期間の通信状態を「通信の活性状態」、「活性状態」、「アクティブ状態」などと呼ぶことができる。統合通信の非通信期間は、通信が行われていない期間であるが、「通信の非活性状態」、「非活性状態」、「非アクティブ状態」などと呼ぶこともできる。
次に、図19を用いて、方法2を具体的に説明する。図19は、音声通話ではなくメールによる通信の通信履歴データの例である。メールの送受信は、数秒程度で終わることが多いので、図19に示すように、通信履歴データは通信終了日時を含んでいない。このように、メール等のセッションをしない通信では、通信履歴データ記憶領域123に通信終了日時を記憶しなくてもよい。本図においては、グループ「1」で示されるグループ通信と、グループ「0」で示される二者間通信が記録されている。以下の説明では、統合閾値を「2分」とする。
通信ID「1100」から「1104」までは、時間的に隣接する通信の通信開始日時の時間差が全て統合閾値以下であるため、1つの統合通信となり、統合通信ID「A010」が付与される。統合通信ID「A010」の通信開始日時は、通信ID「1100」の通信開始日時であり、通信終了日時は、通信ID「A1104」の通信開始日時である。すなわち、通信終了日時が記録されていない通信履歴データを元に統合通信を形成する場合は、統合通信の通信開始日時は、統合通信に含まれる最初の通信の通信開始日時であり、統合通信の通信終了日時は、統合通信に含まれる最後の通信の通信開始日時である。あるいは、統合通信に含まれる最後の通信の通信開始日時に所定時間(例えば30秒)を加算した時刻を統合通信の通信終了日時としてもよい。通信ID「1104」と「1105」との間の時間差は「3分」であって、統合閾値「2分」よりも大きいため、通信ID「1104」と「1105」は別々の統合通信となる。通信ID「1105」と「1106」との時間差は統合閾値以下なので、1つの統合通信となり、統合通信ID「A011」が付与される。
グループID「0」の二者間通信においても同様の処理がなされ、図19に示す例では、統合通信ID「A020」、「A021」、「A022」の3つの統合通信が作成される。なお、隣接する通信との時間差が大きい場合には、「A021」のように1つの通信のみで構成される統合通信を作成してもよいが、作成しなくてもよい。すなわち、統合通信を構成する通信の数が所定数(例えば「2」)未満である場合には、統合通信を作成しなくてもよい。統合通信にしない場合には、元の通信(「A021」)を通信履歴データ記憶領域123から削除する。また、統合通信の通信開始日時と通信終了日時との時間差が所定値(例えば「3分」)に満たない場合は、統合通信を作成しなくてもよい。
このように形成した統合通信を対象にして、図7および図8に示した処理を行うことにより、実施の形態1から3で説明したのと同様に、移動情報を表示装置300の画面に表示できる。例えば、図9と同様な表示を行うことができる。このような構成を採用することにより、実施の形態4に係る移動情報処理装置200は、煩雑な表示になるのを抑制した移動情報を生成することができる。特に、テキストメッセージ通信など短時間で通信が終了する場合であっても、通信期間に対応する軌跡の長さが比較的長くなるため、通信の前後の期間における端末装置の移動状況を分かり易く表示することができる。また、半二重の音声通話においても、1つの通話あたりの通話時間が短くなる傾向があるため、このように統合通信を形成する処理は有効である。通信期間として、端末装置間で頻繁にメッセージを交換している期間を表示するので、どのような地点で、メッセージ交換が頻繁に行われたのか、メッセージ交換に伴って移動状況がどのように変化したかを容易に把握できる。
また、実施の形態1から3において示した移動情報と同様な表示を行うように、統合通信に関する移動情報を生成してもよい。例えば、図9と同様に、統合通信の通信期間の移動軌跡を第1表示形態で表示し、統合通信の非通信期間の移動軌跡を第2表示形態で表示するための移動情報を生成してもよい。また、統合通信の非通信期間における移動軌跡を表示せず、統合通信の通信期間における移動軌跡のみを表示してもよい。統合通信の通信期間は、高い頻度で端末装置間の情報交換がなされている期間であるため、通信を契機とする移動状況の変化が生じる場合は、この期間に生じる可能性が高いといえる。また例えば、図10と同様に、各端末装置の統合通信の移動軌跡を独立した座標系で1つの画面に表示してもよい。また例えば、実施の形態1の変形例で説明したように、移動速度に応じて移動軌跡の表示形態を設定してもよい。この際に、統合通信期間における平均的な移動速度を算出して、1つの統合通信期間が均一な表示になるように表示形態を設定してもよい。また、瞬間的な移動速度を算出し、1つの統合通信期間が複数の表示形態(グラデーション表示等)で表示されるように移動情報を生成してもよい。
なお、例えば図9と同様に、統合通信の移動情報を画面に表示し、移動軌跡(例えば「d807」)を、ユーザが所定の操作(マウス等でクリック)により選択した場合、選択された統合通信に関するテキストメッセージ等を画面に表示してもよい。そして別の所定操作を行うことにより、表示したテキストメッセージ等を画面から消去してもよい。このように情報を提示すれば、ユーザは、どこでどのようなメッセージが交換されたか、あるメッセージに対応して、関連する各端末装置がどのように移動したのか等を非常に直感的に把握することができる。
<実施の形態4の変形例>
実施の形態4においては、関連性の高い複数の通信を1つにまとめて統合通信を形成した。実施の形態4の変形例においては、1つの通信を複数の部分通信に分割し、部分通信ごとの移動軌跡を示す移動情報を生成する。
例えば、音声通話やチャット等のセッションを使用する通信において、1つの通信が継続している期間であっても、情報の伝達がなされない期間が存在する。例えば、音声通話において無音期間が所定時間(例えば3分)以上継続する期間や、チャットにおいてメッセージ送信が所定時間(5分)以上なされない期間である。実施の形態4の変形例においては、このような通信期間中において情報伝達がなされない期間を境界にして、1つの通信を複数の部分通信に分割する。そして、それぞれの部分通信に対して、部分通信IDを付与する。統合通信処理と同様に、部分通信を単位とする処理を行うことにより、通信期間の中で情報共有に寄与しない期間を除外することができる。このため、通信を契機とする端末装置のユーザの移動状況の変化をより的確に示す移動情報を生成できる。
<実施の形態5>
次に、図20を参照しながら、実施の形態5について説明する。実施の形態5に係る移動情報処理装置200は、機能ブロックおよびハードウェア構成については実施の形態2に係る移動情報処理装置と同じである。実施の形態5に係る移動情報処理装置は、移動情報の表示条件を設定する態様および移動情報の表示態様が実施の形態2に係る移動情報処理装置と異なる。
例えば、表示期間を長い期間に設定した場合、表示条件に設定されている期間の全ての移動情報を表示すると、煩雑な表示になってしまうおそれがある。そこで、実施の形態5に係る移動情報処理装置200において、演算部210は、選択的に表示可能な態様の移動情報を生成する機能を有している。図20は、実施の形態5に係る移動情報の表示例を示す図である。図20に示す移動情報表示d170は、表示対象の通信をユーザに選択させるための通信一覧リストd171および地図表示d172を有している。
通信一覧リストd171は、左の列に表示を選択するためのチェックボックスが設けられている。また、通信一覧リストd171は、チェックボックスから右に向かって、通信ID、グループID、通信開始日時、通信終了日時、通信時間、発信端末ID、および端末数を示す欄が設けられている。また、端末数を示す欄の右側にはスクロールバーが設けられている。
ユーザは、通信一覧リストd171のチェックボックスを選択することにより、任意の数の通信を表示対象として選択できる。本図に示す例では、通信0および通信98の行に設けられたチェックボックスにチェックが入っている。すなわち、通信一覧リストd171において、通信0および通信98がそれぞれ選択されている。
ここで、通信0は、現在通信中であることを意味している。従って、通信0の行は、通信終了日時が「継続中」と表示され、通信時間も「継続中」と表示されている。この通信が終了すると、この通信に「0」以外の通信IDが新たに付与される。つまり、1番上の行の通信IDは「0」以外の値になる。その後新たな通信が発生すると、その通信が通信0となり、1番上の行に通信0が追加される。通信0のチェックボックスを1回選択した後、解除しない場合は、新たな通信が発生した際に、自動的にその通信も選択状態となる。このため、常に最新の通信に関する移動情報を表示し続けることが容易にできる。また、通信95のグループIDは「0」である。これは、通信95が二者間通信であったことを示している。従って、通信一覧リストd171における右側の列の端末数は「2」と表示されている。
演算部210が有する表示条件受付部212は、通信0および通信98が選択されていることを受け付け、受け付けた表示条件に関する信号を移動情報生成部104に供給する。移動情報生成部104は供給された信号に基づいて移動情報を生成し、生成した移動情報を出力する。
地図表示d172は、上述した処理の結果、通信一覧リストd171において選択された通信0および通信98の移動軌跡が表示された移動情報である。地図表示d172の情報表示d173は、矢印で示された移動軌跡である軌跡表示d174に関連づけられている。情報表示d173には、軌跡表示d174に係る通信ID、グループID、および端末IDなどの通信属性情報が示されている。また、情報表示d173は、文字情報が2重線の矩形枠に囲まれている。これは、情報表示d173に係る端末装置が発信端末であることを示している。軌跡表示d174は、軌跡表示d174に係る端末装置の通信期間における位置データを示している。すなわち、軌跡表示d174は、通信0、グループ1、および端末T20に係る通信期間の軌跡表示である。また、端末T20は通信0の発信端末である。また、軌跡表示d174により、端末T20が通信0の期間に東方へ移動しながら通信を行ったことが示されている。なお、通信0(現在継続中の通信)の場合、移動軌跡の矢印の先端は、端末装置の現在位置を示しており、時間の経過とともに矢印の位置は更新される。
なお、地図表示d172が表示された後に、通信一覧リストd171において選択状態の通信のチェックボックスを外すと、その通信に係る移動軌跡が地図表示d172から消える(非表示になる)。そして、その通信のチェックボックスを再度選択すると、その通信に係る移動軌跡が地図表示d172に再び表示される。このように、通信一覧リストd171において、任意の通信の選択状態を自由に変更でき、選択状態が移動情報の表示にすぐに反映されるため、ユーザは、どの通信がどの移動軌跡に対応するのかを容易に把握できる。
実施の形態5では以上の構成を採用することにより、ユーザが現在実行中の通信および過去に実行された通信の中から、任意の数だけ自由に選択した通信のみを表示対象にできる。このため、通信表示が煩雑になることを抑制しつつ、選択された通信に係る端末装置の移動情報のみを一画面に表示することができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。