(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0017】
<実施形態1>
以下、本発明の実施形態について、図面を用いて説明する。なお、下記の実施形態は本発明の例示であり、本発明は、下記の構成には限定されない。
【0018】
<システムの構成>
図1は、本実施の形態に係るシステムの一例を模式的に示す図である。
図1のシステムは、本実施の形態に係る処理を行う情報処理装置1と、ネットワーク2を介して情報処理装置1に接続された工場3とを含む。ネットワーク2は、例えばインターネットやイントラネット等の情報通信網であり、情報処理装置1と工場3の図示していないコンピュータとは相互に情報を送受信することができる。また、工場3は、様々な機械及びセンサを備えている。機械の動作はそれぞれ1以上のセンサによって測定され、測定されたデータは工場3の図示していないコンピュータからネットワーク2を介して情報処理装置1へ継続的に送信される。なお、工場3におけるセンサとコンピュータとの接続は、既存の技術を用いて有線又は無線により行うことができる。
【0019】
情報処理装置1は、様々なセンサからデータを取得することができる。本実施形態では、回転機器の回転数や、振動加速度、振動変位、機器温度等が測定される例を示すが、対象とするデータはこれらには限定されない。また、情報処理装置1は、データの測定時刻も工場3のコンピュータから取得するようにしてもよい。なお、システムは複数の情報処理装置1を備えていてもよいし、複数の工場3からデータを取得する構成であってもよい。
【0020】
<機能構成>
図2は、情報処理装置1の一例を示す機能ブロック図である。
図2の情報処理装置1は、記憶部11と、データ取得部12と、取得データ統合部13と、蓄積データ抽出部14と、情報分析部15と、情報出力部16とを有する。記憶部11は、いわゆる主記憶装置または補助記憶装置であり、情報を一時的又は永続的に保持する。データ取得部12は、ネットワーク2を介して工場3からデータを継続的に取得し、記憶部11に格納する。なお、情報処理装置1は、任意のタイミングで発生するデータを順に処理する、いわゆるストリームデータ処理を行うものとする。また、記憶部11に格納される少なくとも一部のデータの形式は、KVS形式を採用してもよい。取得データ統合部13は、取得したデータを所定の規則に基づいて記憶部11へ格納する。蓄積データ抽出部14は、記憶部11に格納された過去の取得データや、予め記憶部11に格納されている所定の閾値等のデータを取得する。情報分析部15は、統合したデータを用いて所定の処理を行い、例えば機器に異常が生じた可能性の有無を判断する。本実施の形態では、例えば機器の回転数に対して予め定められた閾値を越える振動加速度が測定された場合に異常が生じたと判断するような、複数のセンサの値からセンサフュージョンによる処理を行う。情報出力部16は、例えば情報分析部15によって判断された機器の状態に関する情報を工場3のコンピュータ、又はネットワーク2に接続された図示していない監視者のコンピュータ等に出力する。また、
図2では1つの情報処理装置1を示しているが、取得したデータに含まれるセンサの測定値から、所定の規則に基づいて近似した階級値を求め、階級値ごとに受信データを異なるノードに格納するようにしてもよい。また1つの情報処理装置1の複数のプロ
セッサ又はいわゆるマルチコアプロセッサのコアが並列に処理を行うようにしてもよい。
【0021】
<装置構成>
図3は、コンピュータの一例を示す装置構成図である。情報処理装置1や図示していない工場3のコンピュータは、例えば
図3に示すようなコンピュータである。
図3に示すコンピュータ1000は、CPU(Central Processing Unit)1001、主記憶装置10
02、補助記憶装置(外部記憶装置)1003、通信IF(Interface)1004、入出
力IF(Interface)1005、ドライブ装置1006、通信バス1007を備えている
。CPU1001は、プログラムを実行することにより本実施の形態に係る処理等を行う。主記憶装置1002は、CPU1001が読み出したプログラムやデータをキャッシュしたり、CPUの作業領域を展開したりする。主記憶装置は、具体的には、RAM(Random Access Memory)やROM(Read Only Memory)等である。補助記憶装置1003は、CPU1001により実行されるプログラムや、本実施の形態で用いる設定情報などを記憶する。補助記憶装置1003は、具体的には、HDD(Hard-disk Drive)やSSD(Solid State Drive)、eMMC(embedded Multi-Media Card)、フラッシュメモリ等で
ある。主記憶装置1002や補助記憶装置1003は、情報処理装置1の記憶部11等として働く。通信IF1004は、他のコンピュータとの間でデータを送受信する。情報処理装置1は、通信IF1004を介してネットワーク2に接続される。通信IF1004は、具体的には、有線又は無線のネットワークカード等である。入出力IF1005は、入出力装置と接続され、ユーザから入力を受け付けたり、ユーザへ情報を出力したりする。入出力装置は、具体的には、キーボード、マウス、ディスプレイ、タッチパネル等である。ドライブ装置1006は、磁気ディスク、光磁気ディスク、光ディスク等の記憶媒体に記録されたデータを読み出したり、記憶媒体にデータを書き込んだりする。そして、以上のような構成要素が、通信バス1007で接続されている。なお、これらの構成要素はそれぞれ複数設けられていてもよいし、一部の構成要素(例えば、ドライブ装置1006)を設けないようにしてもよい。また、入出力装置がコンピュータと一体に構成されていてもよい。また、ドライブ装置1006で読み取り可能な可搬性の記憶媒体や、フラッシュメモリのような可搬性の補助記憶装置1003、通信IF1004などを介して、本実施の形態で実行されるプログラムが提供されるようにしてもよい。そして、CPU1001がプログラムを実行することにより、上記のようなコンピュータを
図2に示した情報処理装置1等として働かせる。
【0022】
<ストリームデータ処理>
図4は、ストリームデータ処理の一例を示す処理フロー図である。まず、工場3に設けられたセンサが測定した機器の状態を示すデータを工場3のコンピュータが送信し、情報処理装置1のデータ取得部12は、ネットワーク2を介して受信する(
図4:S1)。なお、工場3のコンピュータは、例えば回転数や機器の温度、加速度等、複数のセンサによって同じ時間帯に測定されたデータを1つの単位として、任意のタイミングで情報処理装置1へ送信する。また、
図4のストリームデータ処理は、データ取得部12がデータを受信する度に開始されるものとする。ただし、データ取得部12によるデータの取得は、いわゆるプッシュ(Push)型の通信方式によるものでもプル(Pull)型の通信方式によるものでもよい。
【0023】
図5は、取得するストリームデータを説明するための図である。本実施形態では、測定値の名称又は性質等を識別することができる属性名(すなわち、属性の識別情報)と、測定された値を示す属性値とが取得されるものとする。
図5の例では、属性名及び属性値の列にそれぞれ「機器回転数」及び「1043」が格納されたレコードと、「機器温度」及び「13.38」が格納されたレコードと、「加速度」及び「0.012」が格納されたレコードとが示されている。属性名及び属性値からなるデータ構造によれば、データの測定日時(すなわち作成日時)、運転状態、その他の様々なセンサによって測定されたデー
タも、同一のフォーマットで伝送することができる。なお、例えば機器回転数を測定するセンサがシステム上に複数存在する場合、属性名によっていずれのセンサが取得した値であるか識別できるよう、属性名にセンサの識別情報を含めてもよい。また、センサによる測定値のほかに、例えば属性名及び属性値に「作成時刻(測定時刻)」及び時刻を示す値をそれぞれ格納して伝送するようにしてもよい。
【0024】
次に、情報処理装置1の取得データ統合部13は、受信したデータを統合する(S2)。本ステップでは、例えば
図5に示したデータが順次取得される。また、本ステップでは、取得したデータのうち所定の属性値について階級値を求め、同一の時間帯に測定された同一の階級値に係るデータを統合して記憶部11に保持させる。なお、階級値に変換する対象の属性値は、予め定めておくものとする。また、本実施形態に係る階級値とは、所定の規則に基づいて測定値から変換される離散値をいうものとする。階級値は、次の(1)から(5)に例示するような規則に基づいて求めることができる。
【0025】
(1)所定の定義式に基づく階級値
例えば、測定値の取り得る値の最小値及び最大値を基準として、最小値から最大値までを任意の範囲を示す値(階級とも呼ぶ)に変換する式を定義することができる。温度センサの測定可能な値が最小値(T
min)から最大値(T
max)であることが分かっている場合、次の数1に示すような定義式を用いて0から100までの整数に変換するようにしてもよい。
【数1】
本実施形態では、数1で求められる値をさらに床関数や天井関数を用いて整数に変換するものとする。床関数とは、ある実数について小数点以下等の端数を切り捨て、ある実数以下の最大の整数を求める関数である。天井関数とは、ある実数について小数点以下等の端数を切り上げ、ある実数以上の最小の整数を求める関数である。なお、本実施形態の階級値は、実数に限らず、所定の数の倍数のような離散値であってもよい。
【0026】
(2)値の取り得る範囲として表される階級値
測定値の範囲に対応付けて、階級値を定めておくようにしてもよい。例えば、温度センサの測定値について、測定値10℃以上13℃未満の範囲を階級値12℃と対応付け、測定値13℃以上16℃未満の範囲を階級値14度と対応付けるといったように予め定義しておく。そして、取得データ統合部13は、対応関係の定義を参照し、階級値に変換する。
【0027】
(3)2次元の領域として表される階級値
測定値が2次元の値のように複数の値を含む場合、予め定められた格子状の領域を示す階級値に変換してもよい。例えば、世界測地系に基づく緯度及び経度を含む位置情報に基づき、対象の範囲をメッシュ(網目)状の区域に分け、各区域の識別情報を階級値として用いることができる。なお、段階的に詳細度(粒度とも呼ぶ)の異なるメッシュを定義し、各段階の詳細度により対象の位置を表現するような階級値を採用するようにしてもよい。具体的には、例えば日本工業規格(JIS)に定められている「地域メッシュコード」を用いるようにしてもよいし、独自の形式でメッシュを定義してもよい。
【0028】
ここで、地域メッシュコードは、第1次メッシュ(「第1次地域区画」とも呼ぶ)、第2次メッシュ(「第2次地域区画」、「統合地域メッシュ」とも呼ぶ)及び第3次メッシュ(「第3次地域区画」、「基準地域メッシュ」とも呼ぶ)といった標準地域メッシュ、並びに2分の1地域メッシュ、4分の1地域メッシュ及び8分の1地域メッシュといった分割地域メッシュの各段階の大きさのメッシュで位置を表現する。
図6は、地域メッシュコードを説明するための図である。第1次メッシュとは、地域を1辺の長さが約80kmの略矩形の領域に分割したものであり、第1次メッシュコードは、緯度を表す上2桁の数字及び経度を表す下2桁の数値からなる4桁の数字で表される。第2次メッシュは、第1次メッシュを東西方向及び南北方向にそれぞれ8等分したものであり、第2次メッシュコードは、緯度方向を表す上1桁の数字及び経度方向を表す下1桁の数字からなる2桁の数字を「−(ハイフン)」で第1次メッシュコードに連結した形式で表される。第3次メッシュは、第2次メッシュを東西方向及び南北方向にそれぞれ10等分したものであり、第3次メッシュコードは、緯度方向を表す上1桁の数字及び経度方向を表す下1桁の数字からなる2桁の数字を第1次メッシュコード及び第2次メッシュコードに連結した形式で表される。2分の1地域メッシュは、第3次メッシュを東西方向及び南北方向にそれぞれ2等分したものであり、2分の1地域メッシュコードは、南西の領域を1、南東の領域を2、北西の領域を3、北東の領域を4として第1次〜第3次メッシュコードに連結した形式で表される。4分の1地域メッシュは、2分の1地域メッシュを東西方向及び南北方向にそれぞれ2等分したものであり、4分の1地域メッシュコードは、南西の領域を1、南東の領域を2、北西の領域を3、北東の領域を4として第1次〜2分の1地域メッシュコードに連結した形式で表される。8分の1地域メッシュは、4分の1地域メッシュを東西方向及び南北方向にそれぞれ2等分したものであり、8分の1地域メッシュコードは、南西の領域を1、南東の領域を2、北西の領域を3、北東の領域を4として第1次〜4分の1地域メッシュコードに連結した形式で表される。なお、緯度及び経度を含む位置情報から地域メッシュコードへの変換処理は既存のアルゴリズムを用いて行うことができるため、詳細は省略する。また、本実施形態では、便宜上、第1次メッシュ側を上位のメッシュ、8分の1地域メッシュ側を下位のメッシュと相対的に呼ぶ。
【0029】
なお、位置情報の場合の階級値は、地域メッシュコードに限らず、いわゆるISO規格やJIS規格に定められた国名コード、行政区分(都道府県)コード、全国地方公共団体コード等を連結して表すようにしてもよい。また、位置情報以外の場合においても、上述のような詳細度の階層構造を有する階級値を採用してもよい。例えば、建物における位置を表す場合、建物の識別情報、フロア(階数)、ブロック(区画)又は部屋の識別情報といった情報を結合して階級値とすることができる。このように、階級値には、数値だけでなく文字列を用いてもよい。
【0030】
(4)複数の値を連結して表される階級値
例えば温度と湿度のように複数の測定値が存在する場合、各々から求められる離散値を連結して1つの階級値に変換してもよい。具体的には、温度及び湿度についてそれぞれ上述の規則(1)や(2)によって離散値を求め、温度を上2桁、湿度を下2桁のように2つの離散値をそれぞれ異なる桁に格納した階級値を生成する。
【0031】
(5)所定の関数に基づく階級値
例えば、局所性鋭敏型ハッシュ(LSH:Locality Sensitive Hashing)を用いて求めたハッシュ値を階級値としてもよい。LSHは、高次元データを次元圧縮するための手法であり、高次元空間内での距離が近い2つのベクトルが、ハッシュテーブルにおいて高確率で同じバケットに入るような処理を行う。LSHは既存のアルゴリズムを用いて求めることができるため、詳細は省略する。
【0032】
取得データは、時間帯及び上述の階級値に基づいて分類され、記憶部11に格納される
。また、時間帯は、予め定められた基準時刻から、例えば固定長の時間ずつに区切った期間をいうものとする。例えば、0時を基準として1分ごとの時間帯でデータをグループ化する場合、データの作成時刻を1(分)で除した剰余をデータの作成日時から減じ、当該時間帯を示す識別情報とする。本実施形態では、このような時間帯を、ウィンドウ時間とも呼ぶものとする。本実施形態では、時間帯及び階級値によって分類したデータをそれぞれ並列処理するものとする。すなわち、S2における「統合」とは、例えば時間帯及び階級値に基づくグループに分類して記憶させることである。
【0033】
また、本実施形態では、後の処理において基準値(例えば、閾値)として用いるデータ(データ格納マップとも呼ぶ)を予め記憶部11に記憶しているものとする。データ格納マップは、上述の階級値と紐付けて記憶される。
図7は、データの格納形式を模式的に表す図である。本実施形態では、階級値インデックスに含まれる階級値とデータ格納領域へのポインタとをKVS形式で保持する。また、ポインタが示すデータ格納領域には、データ格納マップが保持される。
【0034】
具体的には、
図8及び
図9に示すようなデータがKVS形式で保持される。
図8は、機器温度の階級値インデックスの一例を示す表である。
図8では、機器温度の階級値に対応付けて、データ格納領域ポインタとしてマップ名が複数登録されている。
図9は、回転数の階級値インデックスの一例を示す表である。
図9では、回転数の階級値に対応付けて、データ格納領域ポインタとしてマップ名が複数登録されている。そして、
図8及び
図9に示したマップ名(data_1、data_2・・・)の各々に対応付けて、
図10に示すデータ格納マップが予め登録されている。
図10のデータ格納マップには、当該基準値の作成日時、回転数の階級値、機器温度上限、機器温度下限、加速度上限及び加速度下限の項目に対応する値が登録されている。回転数の階級値は、本来は連続値であった回転数をKVS形式におけるキーとして用いるために、離散値に変換した値である。また、機器温度上限、機器温度下限、加速度上限及び加速度下限は、それぞれ正常と判断できる範囲を示す基準値である。基準値は、過去の正常動作時における測定データに基づいて予め決定しておく。
【0035】
本実施形態では、データへのアクセス速度を向上させるため、例えばKVS形式を採用するものとする。ここで、KVS形式におけるレコードの抽出は、一般的に、キーに格納された単一の値を指定して実行する。したがって、例えば幅のある連続値の範囲をキーとするような使い方には不向きといえる。本実施形態では、上述の規則(1)〜(5)に例示する通り、測定値の大きさの程度や位置が近い場合に、同一の離散値に変換される可能性が高くなるような階級値を求める。すなわち、KVS形式の検索処理を可能とするために、もとの測定値の大小関係や位置関係を保持する傾向のある(換言すれば、大小関係や位置関係が逆転しない)一種の近似値を用いる。本実施形態では、所定の規則に基づいて求められた離散値である階級値をキーに用いるとともに、バリューとしてデータ格納領域を示す情報(例えばポインタ)を登録することによって、様々なデータに対して汎用的に利用可能な格納形式を実現している。
【0036】
次に、蓄積データ抽出部14は、本実施形態に係る蓄積データを読み出す(S3)。本実施形態に係る蓄積データは、例えば記憶部11に格納されている基準値等(
図7のデータ格納マップ)や、センサの付属情報(例えば、図示していないセンサの設置位置、センサの規格等)といったデータをいうものとする。本ステップでは、データ取得部12が取得した測定データ(本ステップにおいては「問合せ値」とも呼ぶ)に基づいて、蓄積データを抽出する。
【0037】
例えば、階級値インデックスから、問合せ値に基づいて求めた階級値と完全一致する階級値に紐付けられている蓄積データを抽出する。また、本ステップは、所定の周期で実行するようにしてもよい。具体的には、S2において統合処理の基準としたウィンドウ時間
の経過後、所定の待機時間が経過した後にS3の処理を行うようにしてもよい。
【0038】
例えば、機器温度の階級値が0℃を基準とした5℃刻みの床関数によって求められる離散値と定義されている場合において、取得した機器温度の測定値が12℃のとき、階級値として10℃が求められる。そして、
図9に示したような階級値インデックスが記憶部11に保持されている場合、S3において階級値インデックス10℃に対応付けられている蓄積データの格納領域ポインタとしてマップ名「data_1」及び「data_2」が読み出され、当該ポインタが示すデータ格納領域に保持されている蓄積データが抽出される。本実施形態では、問合せ値から求められる階級値と、階級値インデックスにおいて保持されている階級値とを同一の規則に基づいて求める。したがって、測定値が連続値の場合であっても一定の範囲に属する値を同一の階級値に変換し、データ検索のキーに用いることができる。なお、取得データ統合部13がデータを統合するための基準に用いる階級値と、蓄積データ抽出部14が記憶部11から蓄積データを取得する際のキーとして用いる階級値とは一致しなくてもよいし、異なる属性名に対応する値をそれぞれ階級値に変換して用いるようにしてもよい。
【0039】
なお、S3では、問合せ値に基づいて求めた階級値の周囲(上下)所定範囲内に含まれる階級値に紐付けられた蓄積データをさらに抽出するようにしてもよい。例えば、上述の機器温度の例において、問合せ値から求められた階級値±5℃の階級値インデックスに対応する蓄積データをさらに抽出できるようにする。本実施形態では所定の範囲に属する値(問合せ値)を1つの階級値に変換しているところ、所定の範囲の境界付近においては同程度の値が異なる階級値に変換される場合もある。周囲の階級値に紐付けられた蓄積データを抽出することで、例えば最近傍の測定値に係るデータ等、後の処理において対象とすべきデータに漏れが生じることを抑制できる。なお、所定範囲の大きさは、予め適切な値を指定しておくものとする。
【0040】
また、S3において複数の問合せ値に基づいて蓄積データを抽出するようにしてもよい。この場合、例えば、複数の測定値の各々から階級値を求めると共に、階級値インデックスにおいて各階級値に共通して紐付けられた蓄積データを抽出する。例えば、上述の機器温度及び回転数の例において、機器温度の階級値が10℃、回転数の階級値が1000の場合、
図9及び
図10の該当レコードに共通して紐付けられている「data_1」及び「data_2」に対応する蓄積データが抽出される。
【0041】
その後、情報処理装置1の情報分析部15は、測定データと蓄積データとが所定の条件を満たすか判断する(S4)。本ステップでは、実施形態に応じて様々な判断を行う。例えば、データ取得部12が新たに取得した機器の振動加速度及び機器温度について、回転数の階級値に基づく基準値を抽出し、基準値の範囲から外れているか判断する。また、所定の解析処理を行い、データ取得部12が新たに取得した機器の振動加速度と、すでに記憶部11に格納されている蓄積データに係る振動加速度との相関性に基づいて、所定の定義式に基づいて算出される異常値スコアを求めるようにしてもよい。そして、基準値の範囲外の値である場合や、異常値スコアが所定の閾値以上になった場合、異常値スコアに所定の閾値以上の変化があった場合等には、S4において所定の条件を満たすと判断する。なお、複数のウィンドウ時間について監視し、所定期間以上連続してこのような場合が続いたときにはじめて所定の条件を満たすと判断するようにしてもよい。
【0042】
そして、所定の条件を満たすと判断された場合(S4:Yes)、情報処理装置1に接続された出力装置、又はネットワーク2を介して接続された工場3のコンピュータ等、所定の装置に情報を出力する(S5)。例えば、本実施形態では、センサによる監視対象の機器に異常が生じているおそれがある旨のメッセージを出力する。S4において所定の条件を満たさないと判断された場合(S4:No)、又はS5の後、S1で受信したデータ
の処理を終了する。
【0043】
なお、S4において所定の条件を満たさないと判断された場合も、例えば機器が正常に動作している旨の情報を出力するようにしてもよい。また、正常と判断された場合、その旨の情報を蓄積データに追加しておき、S3において正常と判断されたデータを抽出対象としてもよい。
【0044】
上述の通り、本実施形態では、測定データから求められる階級値と、階級値インデックスにおいて蓄積データに対応付けられている階級値とを同一の規則に基づいて求める。したがって、測定値が連続値の場合であっても所定の範囲に含まれる測定値を同一の階級値に変換してデータ検索のキーに用いることができる。そして、階級値をキーとしたKVS形式で階級値インデックスを保持することにより、受信するストリームデータをリアルタイムに処理可能としている。また、複数の情報処理装置1、又は複数のプロセッサ若しくはいわゆるマルチコアプロセッサの複数のコアが、異なる階級値に係るデータを並列処理するような構成にも適している。このように、ストリームデータの処理効率を向上させることができる。
【0045】
また、
図2に示した機能ブロック図と同様の機能を、複数の装置に分散させる構成にしてもよい。
図11に、本実施形態に係る処理を並列に実行する情報処理システムの一例を示す。
図11のシステムは、工場3からデータを受信するデータ取得部12a及び例えば受信したデータを振り分けるためのキューである記憶部11aを含む情報処理装置11aと、以降の処理を並列に実行する情報処理装置11bとを有している。なお、情報処理装置11bの各々に対応するキューを用意し、データ取得部12aが取得したデータを、例えば所定の属性値から求めた階級値に基づいて振り分けるようにしてもよい。また、情報処理装置11bは、記憶部11bと、取得データ統合部13bと、蓄積データ抽出部14bと、情報分析部15bと、情報出力部16bとを含む。例えば、各情報処理装置1bの取得データ統合部13bは、例えば各自に振り分けられたデータを情報処理装置1aのキューから取得する。
図11のような分散システムによれば、データ取得部12aが取得したデータについて例えば所定の属性値から求めた階級値に基づき、並列に処理を行うことができるようになる。なお、データ取得部12aがデータを分散させるための基準に用いる階級値と、蓄積データ抽出部14bが記憶部11bから蓄積データを取得する際のキーとして用いる階級値とは一致しなくてもよいし、異なる属性名に対応する値をそれぞれ階級値に変換して用いるようにしてもよい。また、処理を複数の装置に分散させるための、物理的又は論理的な機能の切り分け方は、
図11の構成には限られない。例えば、情報処理装置11aが多重化されていてもよいし、キューは情報処理装置11b又は図示していない他の情報処理装置が有していてもよい。
【0046】
<実施形態2>
図12は、実施形態2に係るシステムの一例を模式的に示す図である。システムの構成及び処理は基本的に実施形態1と同様であるため、対応する構成要素及び処理については対応する符号を付し説明を省略する。以下、実施形態1との差異を中心に説明する。
図12のシステムは、本実施の形態に係る処理を行う情報処理装置1と、ネットワーク2を介して情報処理装置1に接続されたデータセンター3aとを含む。本実施形態では、データセンターの温度、湿度、空調機器の動作状況等をセンサで監視し、空調制御を行う。
【0047】
なお、データセンター3aは、1つの建物が1以上のフロア(階)を有し、各フロアは1以上のエリア(領域)又は部屋等を有し、エリア又は部屋等の各々は、1以上のサーバ装置を備えるものとする。また、エリア又は部屋等の各々は、1以上の空調機器を備える。また、エリア若しくは部屋、又はサーバ装置の少なくともいずれかが温度センサ、湿度センサ等を備える。そして、設置された位置に基づいて、空調機器と当該空調機器が影響
を与えるセンサとの対応付けが記憶されているものとする。
【0048】
図13は、実施形態2に係る処理の一例を示す処理フロー図である。実施形態2では、S5aにおいて機器の動作を制御する点が実施形態1とは異なっている。また、上述の通り、取得するデータは、データセンターの温度、湿度、空調機器の動作状況等を示すデータである。
【0049】
S2においては、例えば建物の識別情報、フロアの識別情報、エリア又は部屋の識別情報、機器の識別情報等を階級値として取得データを統合する。離散値を階級値として用いる場合、変換せずにそのまま用いるようにしてもよい。
【0050】
また、S3においては、例えば取得データに係るセンサの識別情報に基づいて、当該センサによって過去に測定された温度や湿度のデータ(すなわち、蓄積データ)をウィンドウ時間ごとに読み出す。
【0051】
そして、S4において、各センサの測定値が上昇傾向にあるか、又は下降傾向にあるか(すなわち、所定の条件を満たすか)判断する。本実施形態では、各センサについて温度又は湿度の目標値が予め定められており、当該目標値と測定値との差が増大する傾向にある場合、空調機器の動作の目標値(設定温度、設定湿度とも呼ぶ)を修正するものとする。
【0052】
所定の条件を満たすと判断された場合、S5aでは、空調機器ごとに予め定められた各センサへの影響範囲に基づいて、設定を変更すべき空調機器を特定し、空調機器の設定温度又は設定湿度といった設定値を変更する。
【0053】
本実施形態によれば、異常を検知した場合に、情報を出力する代わりに機器の動作を制御することができる。なお、さらに空調機器の設定値を変更した旨の情報を所定の装置に出力するようにしてもよい。
【0054】
<実施形態3>
図14は、実施形態3に係るシステムの一例を模式的に示す図である。システムの構成及び処理は基本的に実施形態1と同様であるため、対応する構成要素及び処理については対応する符号を付し説明を省略する。以下、実施形態1との差異を中心に説明する。
図14のシステムは、本実施の形態に係る処理を行う情報処理装置1と、ネットワーク2を介して情報処理装置1に接続された、移動体3bとを含む。本実施形態では、移動体3bはGPS(Global Positioning System)受信機等の位置情報を取得可能なセンサを備えて
いるものとする。具体的には、移動体3bは、ナビゲーション装置を備える車両や、ユーザが所持して移動する携帯電話機、スマートフォン、タブレット(スレートPC(Personal Computer))、ノート型PC等である。本実施形態では、例えば、所定のアプリケー
ションソフトウェアをインストールした各移動体3bから位置情報を取得する。そして、ある店舗の位置から所定範囲内に存在する移動体3bに対し、店舗の広告又は電子クーポンといった情報を出力する。なお、移動体3bから所定期間内に受信した位置情報を基準値として記憶部11に記憶し、いずれかの基準値が予め定められた店舗の位置から所定範囲内に存在する場合、基準値に対応する移動体3bに情報を出力するものとする。この場合、基準値の格納領域を上述した階級値インデックスによって記憶せず、メモリ等の主記憶装置に保持するようにしてもよい。
【0055】
次に、実施形態1と同様に
図4に基づいて実施形態3の処理を説明する。上述の通り、本実施形態では移動体3bの存在する位置情報を継続的に取得する。また、S2において、同一の時間帯に同一のメッシュ内に存在する移動体3bの情報を統合して格納する。な
お、上述の第1次メッシュから8分の1地域メッシュの中から、処理に応じて好ましい詳細度のメッシュを採用することができる。例えば、本実施形態では第3次メッシュを用いて処理を行うものとする。
【0056】
そして、S3において、例えば所定の店舗の位置(すなわち、問合せ値)から所定範囲(探索範囲とも呼ぶ)内の移動体3bを読み出す。ここでは、簡易的に同一の階級値(すなわち、同一のメッシュ)に含まれる移動体3bを対象として探索範囲内に存在するか判断してもよい。ただし、例えば
図15に示すように、店舗4と同一のメッシュに存在する移動体3b−1よりも、周囲のメッシュに存在する移動体3b−2の方が店舗4に近い場合もある。
図15は、メッシュ、移動体、及び店舗の位置関係の一例を示す図である。
図15の例では、縦方向にA〜Cの3つ、横方向に1〜3の3つ、合計でA1〜C3の9つのメッシュが示されている。本実施形態では、問合せ値である店舗4が属するメッシュB2の周囲に存在するメッシュC1に属する移動体3bを対象として探索範囲内に存在するか判定できるようにする。詳細には、あるメッシュB2において基準となる店舗4がいずれの方角に存在するのか(すなわち、南西側、南東側、北西側又は北東側)に存在するのか、下位のメッシュコードを参照することで判断できるため、該当する方角(
図15の例では南西側)の周囲のメッシュ(例えばB1、C1及びC2)に含まれる移動体を対象として探索範囲内に存在するか判断する。なお、対象とされた移動体3bと店舗4との距離の計算は、ヒュベニの公式等を用いて算出することができるため詳細は省略する。
【0057】
S4では、店舗4の位置から探索範囲内に存在するという条件を満たす移動体3bを抽出し、当該条件を満たす移動体3bが1以上存在する場合には、S5において該当する移動体3bの情報を所定の装置に出力する。なお、店舗4からの距離が近い順に所定数の移動体3bを抽出するようにしてもよい。また、S4において連続するウィンドウ時間の各々における移動体3bと店舗4との距離を比較し、時間の経過に伴って距離が減少している(すなわち、移動体3bが店舗4に近づいている)場合に、S5において当該移動体3bに情報を出力するようにしてもよい。
【0058】
本実施形態でも、測定データ(位置情報)から求められる階級値(地域メッシュコード)と、蓄積データの階級値インデックスとを同一の規則に基づいて求めるため、測定値が連続値の場合であっても所定の範囲に含まれる測定値を同一の階級値に変換してデータ検索のキーに用いることができる。そして、階級値をキーとしたKVS形式で階級値インデックスを保持することにより、受信するストリームデータをリアルタイムに処理可能としている。また、
図15を用いて説明した通り同一の階級値に含まれる移動体3bのみを探索するだけでは最近傍の移動体3bが抽出できないおそれがあるところ、S3において周囲の階級値に係るメッシュを探索の対象とすることで、漏れなく移動体3bを抽出できるようにしている。
【0059】
なお、周囲のメッシュに含まれる移動体3bを探索の対象とするために、次のような処理を行ってもよい。ここでは、
図15の例において、移動体同士の距離に基づき、ある処理対象の移動体3b−1から所定範囲内(例えば、
図15の移動体3b−1を中心とする破線の円内)に存在する移動体を抽出するものとする。S1において例えば
図15の移動体3b−2、3b−3に関する位置情報を取得した場合、当該位置情報から求めた階級値(メッシュC1、A3)だけでなく、当該階級値から所定範囲内の階級値(周囲のメッシュ)に係るグループにも分類する。すなわち、予め定められている探索範囲の大きさ(所定範囲)に基づき、移動体3b−2、3b−3の周囲所定範囲内に隣接するメッシュの少なくとも一部が存在する場合は、周囲のメッシュに存在する移動体からも探索の対象として抽出されるべきであるため、該当する周囲のメッシュにも紐付けて移動体3b−2、3b−3の情報を登録しておく。そして、S2において取得データを統合する際、例えばメモリ上に、移動体3b−2の場合、自身が属するメッシュC1だけでなく、所定範囲内に
存在する上(B1)、右上(B2)、及び右(C2)のメッシュにも紐付けて移動体3b−2に関する情報を保持しておく。同様に、移動体3b−3の場合、自身が属するメッシュA3だけでなく、周囲所定範囲内に存在するメッシュA2、B2、B3にも紐付けて移動体3b−3に関する情報を保持しておく。
図11に示した情報処理システムのような構成により並列処理する場合において、周囲のメッシュに相当する階級値を異なる装置が処理するときであっても、予め各装置に移動体の情報を保持させておくことにより漏れなく探索の対象を抽出できるようになる。
【0060】
<その他>
本発明は上述の処理を実行するコンピュータプログラムを含む。さらに、当該プログラムを記録した、コンピュータ読み取り可能な記録媒体も、本発明の範疇に属する。当該プログラムが記録された記録媒体については、コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、上述の処理が可能となる。
【0061】
ここで、コンピュータ読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、フレキシブルディスク、光磁気ディスク、光ディスク、磁気テープ、メモリカード等がある。また、コンピュータに固定された記録媒体としては、ハードディスクドライブやROM等がある。
【0062】
なお、階級値が複数段階の詳細度で表現される場合、例えば各段階の階級値によって上述の階級値インデックスを作成しておき、情報処理装置1の処理負荷に応じて処理に使用する階級値の詳細度を変更するようにしてもよい。1つのメッシュに含まれる移動体の数が増加し、処理負荷が所定の閾値を超えたと判断された場合、使用する階級値を下位のメッシュに変更することで処理対象の移動体数を減らし、処理負荷を軽減させることができる。また、近傍の移動体を特定するような処理の場合、移動体の密度(例えばメッシュ当たりの移動体の数)に応じて、階級値の詳細度を変更するようにしてもよい。
【0063】
また、店舗4からの距離に基づく処理には限定されず、例えば複数の移動体3b同士の距離を算出し、例えば近隣の移動体間で通信処理を行う態様としてもよい。
【0064】
また、処理の対象となるストリームデータは、センサが測定したデータには限られない。例えば、SNS(Social Network Service)やミニブログ等への投稿、コンピュータや通信機器が記録する様々なログデータ等を処理対象としてもよい。また、投稿にユーザ端末のGPSで測定した位置情報が付加されているときは、当該位置情報を地域メッシュである階級値に変換して例えば地域ごとの傾向を分析することができる。