説明

事象認識システムおよび事象認識方法

【課題】事象の認識にとって重要なセンサノードを選択して事象を認識する。
【解決手段】事象認識システムは、複数のセンサノード1−1〜1−3とサーバ6とからなる。サーバ6は、学習用のサンプル事象を検出したセンサノード1−1〜1−3の時系列のセンサデータから特徴ベクトルを生成し、特徴ベクトルとサンプル事象の望ましい認識結果とから事象認識の決定木を生成し、決定木に従って各センサノード1−1〜1−3の機能を選択し、選択した機能を各センサノード1−1〜1−3に通知する。サーバ6は、学習後の動作において事象を検出したセンサノード1−1〜1−3からセンサデータが得られたときに、決定木を用いて事象を認識する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、センシング機能および通信機能を備えた複数のセンサノードと、これらのセンサノードからデータを収集して事象を認識するサーバとからなる事象認識システムに関するものである。
【背景技術】
【0002】
近年、環境計測、防災、防犯、製造などの分野でネットワークに接続されたセンサを用いてリアルタイムで情報を収集できるものがある。このようなものの中には、単純にセンサの応答値を通信回線によって遠隔地に送信するものの他に、検知データの特性、例えば緊急度などに応じて通信回線を選択するものなどがある。また、情報収集の簡易化から、バッテリ駆動かつ無線によるデータ通信機能をもっセンサノードからなるセンサネットワークを用いるものがある。
【0003】
このようなバッテリ駆動の無線センサネットワークにおいては、センシング機能の高度化と駆動時間の長期化とを両立する技術が開発されている。例えば、センサノードのセンシング機能を有するハードウェアモジュールで消費する電力と通信機能を有するハードウェアモジュールで消費する電力の和の平均が一定になるように制御したり、電力の和の平均が各センサノード間で等しくなるように制御したり、あるいは電力の和の平均が残存バッテリ容量に比例するように制御したりして、緊急度の高い情報や重要な情報をセンシングするセンサノードにおいてはセンシング機能のハードウェアモジュールで消費する電力を多くし、その他は通信機能のハードウェアモジュールで消費する電力を多くするようなセンサネットワークが提案されている(特許文献1参照)。
【0004】
【特許文献1】特開2005−208719号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1で提案されたセンサネットワークには、以下のような問題点があった。すなわち、このセンサネットワークにおいて、センサノードは人の存在や粒子濃度、ひずみの存在といった単一の事象を検知するものである。しかし、このセンサネットワークでは、空間的な動きである人の行動パターンなど、変化する事象を複数のセンサノードで検出する場合、重要な情報を検出しているセンサノードを特定したり評価したりすることができず、センシング事象の時間的な変化に対応することができなかった。
【0006】
本発明は、上記課題を解決するためになされたもので、事象の認識にとって重要なセンサノードを選択して事象を認識することができる事象認識システムおよび事象認識方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、事象を検出するセンシング機能および通信機能を備えた複数のセンサノードと、これらのセンサノードからデータを収集するサーバとからなる事象認識システムにおいて、前記サーバは、学習用のサンプル事象を検出したセンサノードの時系列のセンサデータから特徴ベクトルを生成し、この特徴ベクトルと前記サンプル事象の望ましい認識結果とから、事象認識の決定木を生成する決定木生成手段と、学習時に前記決定木に従って各センサノードの機能を選択するセンサノード機能選択手段と、学習時に前記センサノード機能選択手段によって選択された機能を各センサノードに通知するセンサノード機能通知手段と、学習後の動作において事象を検出したセンサノードからセンサデータが得られたときに、前記決定木を用いて事象を認識する事象認識手段とを備えることを特徴とするものである。
また、本発明の事象認識システムの1構成例において、前記センサノード機能選択手段は、各センサノードをデータ中継を行う中継ノードと、事象の検出とデータ中継の両方を行うセンシングノードに区分することを特徴とするものである。
また、本発明の事象認識システムの1構成例において、前記センサノードは、事象を検出するセンサと、自ノードの通信コストとセンシングコストを決定するコスト決定手段と、このコスト決定手段が決定した通信コストとセンシングコストを他のセンサノードに通知するコスト通知手段と、前記サーバまでの直通の通信路を確保できない場合に、通信範囲内にある他のセンサノードから通信コストとセンシングコストのデータを受信し、自ノードの通信範囲内にあるセンサノードのうち、通信コストとセンシングコストの和が最小となるセンサノードを中継ノードとして選択する中継ノード選択手段と、前記センサが事象を検出したときに、事象を検出したことを示すセンサデータを送信するセンサデータ送信手段と、他のセンサノードからセンサデータを受信したときに、前記サーバまでの直通の通信路を確保できている場合は、受信したセンサデータを前記サーバ宛に転送し、前記サーバまでの直通の通信路を確保できない場合は、受信したセンサデータを前記中継ノード選択手段が選択した中継ノード宛に転送するデータ中継手段とを備えることを特徴とするものである。
【0008】
また、本発明の事象認識方法は、サーバが、学習用のサンプル事象を検出したセンサノードの時系列のセンサデータから特徴ベクトルを生成し、この特徴ベクトルと前記サンプル事象の望ましい認識結果とから、事象認識の決定木を生成する決定木生成ステップと、サーバが、学習時に前記決定木に従って各センサノードの機能を選択するセンサノード機能選択ステップと、サーバが、学習時に前記センサノード機能選択ステップで選択した機能を各センサノードに通知するセンサノード機能通知ステップと、サーバが、学習後の動作において事象を検出したセンサノードからセンサデータが得られたときに、前記決定木を用いて事象を認識する事象認識ステップとを備えることを特徴とするものである。
また、本発明の事象認識方法の1構成例において、前記センサノード機能選択ステップは、各センサノードをデータ中継を行う中継ノードと、事象の検出とデータ中継の両方を行うセンシングノードに区分することを特徴とするものである。
また、本発明の事象認識方法の1構成例は、センサノードが、自ノードの通信コストとセンシングコストを決定するコスト決定ステップと、センサノードが、前記コスト決定ステップで決定した通信コストとセンシングコストを他のセンサノードに通知するコスト通知ステップと、センサノードが、前記サーバまでの直通の通信路を確保できない場合に、通信範囲内にある他のセンサノードから通信コストとセンシングコストのデータを受信し、自ノードの通信範囲内にあるセンサノードのうち、通信コストとセンシングコストの和が最小となるセンサノードを中継ノードとして選択する中継ノード選択ステップと、センサノードが、事象を検出したときに、事象を検出したことを示すセンサデータを送信するセンサデータ送信ステップと、センサノードが、他のセンサノードからセンサデータを受信したときに、前記サーバまでの直通の通信路を確保できている場合は、受信したセンサデータを前記サーバ宛に転送し、前記サーバまでの直通の通信路を確保できない場合は、受信したセンサデータを前記中継ノード選択ステップで選択した中継ノード宛に転送するデータ中継ステップとを備えることを特徴とするものである。
【発明の効果】
【0009】
本発明によれば、学習用のサンプル事象を検出したセンサノードの時系列のセンサデータから特徴ベクトルを生成し、この特徴ベクトルとサンプル事象の望ましい認識結果とから決定木を生成し、決定木に従って各センサノードの機能を選択し、選択した機能を各センサノードに通知するようにしたので、事象の認識にとって重要な最低限必要なセンシングノードとセンシングを行わない中継ノードとを特定することが可能となる。したがって、本発明では、認識したい事象の例を予め学習用のサンプル事象として与えて、事象認識システムを学習させ、決定木を生成させるようにすれば、事象認識システムが事象の認識にとって重要な最低限必要なセンシングノードを自動的に選択するので、人の行動パターンなどの変化する事象に対応することができる。また、本発明では、センシング能力を犠牲にすることなく最小限のセンサノードによるセンサネットワークを構成することが可能となる。
【0010】
また、本発明では、センサノードが、自ノードの通信コストとセンシングコストを決定して他のセンサノードに通知し、サーバまでの直通の通信路を確保できない場合に、通信範囲内にある他のセンサノードから通信コストとセンシングコストのデータを受信し、自ノードの通信範囲内にあるセンサノードのうち、通信コストとセンシングコストの和が最小となるセンサノードを中継ノードとして選択するようにしたので、センサネットワークを再構成することができ、センシング機能を犠牲にすることなく、センシング機能と通信機能を両立させることができる。また、学習後の動作において行うようにすれば、最新の通信状況やセンサノードの最新のリソースに応じて、センサネットワークを再構成することができる。
【発明を実施するための最良の形態】
【0011】
以下、本発明の実施の形態の事象認識システムおよび事象認識方法について図に基づいて詳細に説明する。図1は本実施の形態に係るセンサノードの構成を示すブロック図である。センサノード1は、温度センサやガスセンサ、人感センサやスイッチなどの状態測定用センサ2と、センサノード1の検出結果やセンサノード1に固有のIDを送信し、後述するサーバから信号を受信する無線通信機能モジュール3と、センサデータおよびプログラムを記憶するメモリ4と、メモリ4に格納されたプログラムに従って状態測定用センサ2や無線通信機能モジュール3を制御するCPU(Central Processing Unit)5などを備えている。
【0012】
状態測定用センサ2としては、室内の人の行動をセンシングするために使用される場合は人感センサやスイッチが採用され、環境計測に使用される場合はガスセンサや温度センサなどが採用される。人感センサとしては、例えば赤外線、超音波、可視光などを用いたものがある。このように、状態測定用センサ2はセンシング目的により適宜選択されるものである。
【0013】
センサノード1は、小型であり、また図示しない内部のバッテリによって駆動可能であるため、ユーザが容易に設置することが可能である。センサノード1の電源として商用電源を利用することも可能であるが、バッテリ駆動により場所を選ばず設置することができる。無線通信機能モジュール3と後述するサーバとの間の無線通信としては、無線LAN(Local Area Network)、特定小電力無線、微弱無線、ZigBee(登録商標)、Bluetooth(登録商標)などを利用できる。これらの無線通信を利用した場合、無線通信距離は数mから数十mである。ただし、センサノード1は中継機能を備えているため、他のセンサノード1とサーバとの間の通信を中継することにより長距離の通信を実現できる。
【0014】
図2は本実施の形態に係るサーバの構成を示すブロック図である。サーバ6は、パーソナルコンピュータのようなもので構成することが可能である。このサーバ6は、データやプログラムを記憶するメモリ7と、メモリ7に格納されたプログラムに従ってサーバ全体を制御するCPU8と、通信インタフェース10などを備えている。通信インタフェース10には、センサノード1と無線通信を行うセンサノード用送受信器9が接続されている。
【0015】
通信インタフェース10としては、例えばシリアルポート、パラレルポート、LANポート、USB(Universal Serial Bus)ポート、CF(CompactFlash)カードスロットなどを利用することができる。いずれの場合も、センサノード用送受信器9側にも同様のインタフェースが必要となる。
【0016】
図3は本実施の形態に係る事象認識システムの構成を示す図である。ユーザ(不図示)の周囲に設置されている複数のセンサノード1−1〜1−3は、ユーザの存在を人感センサなどの状態測定用センサ2によって検出し、ユーザの存在を検出したことを示す検出データとセンサノードのIDとをサーバ6へ送信するか、あるいは検出データの代わりにIDをサーバ6へ送信する。以下、センサノード1から得られる検出データとIDを総称して、センサデータと呼ぶ。
【0017】
サーバ6は、センサノード用送受信器9を経由してセンサノード1からセンサデータを受信する。そして、サーバ6は、受信したセンサデータに基づいてパターン認識を行うことにより、センサノード1で検出された事象(ユーザの行動や環境の状態)を認識する。さらに、サーバ6は、各センサノード1をセンシングノードと中継ノードに区分し、各センサノード1に機能を通知する。
【0018】
図4はサーバ6のCPU8によって実現される機能手段を示すブロック図である。CPU8によって実現される機能手段としては、センサノード制御部12と、データベース13と、事象認識部14とがある。センサノード制御部12は、決定木生成部15と、センサノード機能選択部16と、センサノード機能通知部17とから構成される。
【0019】
決定木生成部15は、学習時にセンサノード1から得られたセンサデータとユーザによって入力された望ましい認識結果とをメモリ7に格納して、メモリ7にデータベース13を構築し、このセンサデータと望ましい認識結果とから、センサノード1によって検出された事象を認識するための決定木をデータベース13に構築する。
【0020】
センサノード機能選択部16は、データベース13に構築された決定木に基づいて、事象の認識にとって重要な最低限必要なセンサノード1を選択することにより、各センサノード1の機能を選択する。
センサノード機能通知部17は、センサノード機能選択部16によって選択された機能を通信インタフェース10を通じて各センサノード1に通知する。
【0021】
事象認識部14は、学習後の認識動作において、センサノード1から得られたセンサデータを基にデータベース13を参照し、決定木を用いたパターン認識を行って事象を認識する。
CPU8は、メモリ7に格納されたプログラムを実行することにより、センサノード制御部12とデータベース13と事象認識部14とを実現する。
【0022】
なお、センサノード制御部12とデータベース13と事象認識部14とは必ずしもサーバ6内に構築されなければならないわけでなく、より高性能の計算資源を利用するためにシステム外部にセンサノード制御部12とデータベース13と事象認識部14とを配置し、通信ネットワークを経由してサーバ6と通信を行うようにしてもよい。また、データベース13を、ユーザ毎に用意することもできる。
【0023】
図5はある環境、例えば居室内におけるセンサノード1−1〜1−10の配置例を表した平面図である。センサノード1−1〜1−10は、居室の入口50から通路51に沿って配置されている。各センサノード1−1〜1−10の状態測定用センサ2としては、ユーザによる接触を検出する接触センサや、ユーザの接近を検出する人感センサなどが使用される。
サーバ6は、ユーザの行動を認識し、居室の照明や空調などの環境制御をしたり、ユーザの監視を行ったりする。
【0024】
以下、学習データ(センサノード1からのデータとサンプル事象の望ましい認識結果)の獲得と決定木の生成とセンサノード1の機能選択とセンサノード1への機能通知とを行う学習時の動作について説明する。図6はサーバ6の学習時の動作を示すフローチャートである。図7にユーザのある行動(サンプル事象)に対するセンサノード1−1〜1−10の検出例を示す。センサノード1−1〜1−10は、ユーザの存在を検出したときに、ユーザの存在を検出したことを示すセンサデータをサーバ6に送信する。図7の例では、このセンサノード1−1〜1−10から送信されたセンサデータをパルス60で表している。前述のとおり、センサノード1−1〜1−10は、ユーザの存在を検出したことを示すセンサデータとして、自身に固有のIDを送信するようにしてもよい。
【0025】
ユーザは、入室し、机52に向かって通路51を移動した。この結果、図7に示すように、センサノード1−1,1−2,1−3,1−4,1−5,1−6,1−7,1−8,1−9,1−10がユーザの存在を順に検出した。そして、ユーザはしばらく机52で作業をしたので、この作業の間、センサノード1−10がユーザの存在を連続して検出した。その後、ユーザは、机52を退席し、通路51を移動して退室した。この退席、退室により、センサノード1−9,1−8,1−7,1−6,1−5,1−4,1−3,1−2,1−1がユーザの存在を順に検出した。
【0026】
以上の一連の行動の中で入室、着席、退席、退室の4つの行動に着目する。この4つの行動は、入室時に照明をつける、着席時に机上の個別照明をつける、退席時に個別照明を消す、退室時に照明を消すなど、ユーザによる環境制御と関連する可能性が高いものである。このため、この4つの行動を認識することを考える。
【0027】
ユーザの入室はセンサノード1−1が検出し、着席はセンサノード1−10が検出し、退席はセンサノード1−9が検出し、退室はセンサノード1−1が検出しているため、これらのセンサ1−1,1−9,1−10が4つの行動と密接に関連していることが分かる。ただし、これらのセンサだけでは4つの行動を認識することはできない。すなわち、センサノード1−1の検出がユーザの入室を示すものなのか退室を示すものなのかが分からず、センサノード1−10の検出がユーザの着席を示すものなのか机での作業を示すものなのかが分からず、センサノード1−9の検出が着席前の検出を示すものなのか退席を示すものなのかが分からない。
【0028】
ここで、10個のセンサノード1−1〜1−10のセンサデータをS1〜S10とし、センサ検出ベクトルを(S1,S2,S3,S4,S5,S6,S7,S8,S9,S10)、ユーザの存在を現在検出しているという状態をr、ユーザの存在を現在からx時刻前に検出したという状態をpx、ユーザの存在をt時刻前から現在までの間検出していないという状態をnとする。tとxは正の数で(t≧x)、tを次数と呼ぶ。t=3の場合、センサノード1−1〜1−10の時系列の検出結果からセンサ検出ベクトルは、図8のように表すことができる。ただし、図8の例では、ユーザはノード間を移動するのに1時刻かかるものとする。
【0029】
サーバ6の決定木生成部15は、学習時にセンサノード1−1〜1−10からセンサデータを受け取ると、このデータをメモリ7に格納する(図6ステップS11)。
また、ユーザは、サンプル事象の望ましい認識結果として、ユーザの注目すべき行動(入室、着席、退席、退室)をセンサデータと対応付けるようにしてサーバ6に入力する(ステップS12)。つまり、ユーザが最初にセンサノード1−1を通過したときのセンサ検出ベクトルに「入室」という行動を対応付け、ユーザがセンサノード1−10を通過したときのセンサ検出ベクトルに「着席」という行動を対応付け、ユーザがセンサノード1−9を通過したときのセンサ検出ベクトルに「退席」という行動を対応付け、ユーザが最後にセンサノード1−1を通過したときのセンサ検出ベクトルに「退室」という行動を対応付ける。こうして、センサノード1−1〜1−10のデータとサンプル事象の望ましい認識結果とが対応付けられたデータベース13が構築される。
【0030】
上記の例では、入室、退室、着席、退席というユーザの4つの行動は、センサ1−1〜1−10の時系列の検出結果から生成されたセンサ検出ベクトルによって区別することができる。さらに、一例として直感的にセンサノード1−1,1−2,1−9,1−10の情報を利用することにより、ユーザの行動を認識できるということが分かる。人間はこのような選択を比較的容易に行うことができるが、様々な場合にいちいち人間が考えていては手間がかかりすぎる。例えば、個人によって照明などの環境をどのように調節、制御したいかは異なるであろうし、環境によってもそれぞれ異なるであろう。それをユーザが考えながらセンサノードを設置したり動作させたりするのは大変な労力を要する。したがって、人手を介さずこのようなセンサ選択を自動的に実現させる必要がある。
【0031】
ここでは、情報利得に基づいて、パターン認識における特徴量の選択を行う。具体的には、クインラン(J.R.Quinlan)の決定木の方法を利用する(文献「J.R.Quinlan,“Induction of Decision Trees”,Machine Learning 1:81-106,1986」参照)。情報利得とは、決定木の分岐ノードとなる属性(ここではセンサノード)の重要度を表すものであり、特徴量とは、各センサノード1の検出結果と考えることができる。
【0032】
決定木生成部15は、クインランのID3アルゴリズムを用いて開発された決定木ソフトウエアを含むデータマイニングツールWEKAを用いて決定木をデータベース13に構築する(図6ステップS13)。データマイニングツールWEKAについては、例えば文献「http://www.cs.waikato.ac.nz/ml/weka/」に開示されている。この決定木の構築処理では、決定木生成部15は、ある次数のもとでセンサノード1の時系列のセンサデータから特徴ベクトルであるセンサ検出ベクトルを生成し、各センサノード1の情報利得を求め、情報利得が最大となるセンサノード1を決定木の分岐ノードにする操作を行う。
【0033】
図9に決定木生成部15によって生成された決定木の例を示す。図9の決定木によると、S1=r,S2=nであればユーザの入室と認識できることが分かる。同様に、S1=r,S2=p1であればユーザの退室と認識でき、S1=n,S10=r,S9=p1であればユーザの着席と認識でき、S1=n,S10=p1であればユーザの退席と認識できる。また、図9の決定木によると、センサノード1−1,1−2,1−9,1−10以外の6つのセンサノード1−3〜1−8のセンサデータはユーザの行動の認識に利用されておらず、したがって行動認識に最低限必要なセンサノードを選択できていることが分かる。
【0034】
以上のようにステップS13の処理により、事象の認識ルールの生成と、事象の認識に最低限必要なセンサノード1の決定の両方を実現できていることが分かる。
続いて、センサノード機能選択部16は、データベース13に構築された決定木において分岐ノードになっているセンサノード1を、事象の認識にとって重要な最低限必要なセンサノード1として選択することにより、各センサノード1の機能を選択する(図6ステップS14)。図9の例では、事象の認識に最低限必要なセンサノード1として、センサノード1−1,1−2,1−9,1−10が選択されることになる。
【0035】
複数のセンサノード1からなるセンサネットワークにおいて、センシング機能と通信機能を両立させることは重要であり、どちらか一方を欠いてもセンサネットワークを構成することはできない。あるセンサノード1からサーバ6まで直通の無線通信路を確保できない場合、別のセンサノード1を中継ノードとして利用することにより無線通信路を確保できる。このような中継ノードをどのように決めるかが問題となる。中継ノードとなるセンサノード1は、自分以外の他のセンサノード1の通信を中継するため、消費電力は大きくなる。もし、センシングと中継の両方を行うと、電力を大量に消費し、センサノード1の機能が停止することも考えられる。よって、上記センサノード1の選択機能を利用し、センサノード1をセンシングノードと中継ノードに区分することにより、センサネットワーク全体としての機能を損ねないようにすることが重要である。
【0036】
すなわち、センサノード機能選択部16は、事象の認識に最低限必要なセンサノード1−1,1−2,1−9,1−10を事象の検出を行い、場合によってはデータの中継も行うセンシングノードとして選択し、その他のセンサノード1−3〜1−8を中継ノードとして選択する(ステップS14)。こうして、センサノード1をセンシングノードと中継ノードに区分し、各センサノード1の機能を選択できたことになる。
【0037】
センサノード機能通知部17は、センサノード機能選択部16によって選択された機能を通信インタフェース10を通じて各センサノード1に通知する(図6ステップS15)。図9の例によれば、センサノード機能通知部17は、センサノード1−1,1−2,1−9,1−10に対して、実現すべき機能がセンシング機能であることを通知し、またセンサノード1−3〜1−8に対して、実現すべき機能が中継機能であることを通知する。
【0038】
最後に、各センサノード1は、サーバ6のセンサノード機能通知部17から通知された機能によりセンシングコストを算出し、通信コストとセンシングコストの和が最小である中継ノードを選択してセンサネットワークを再構成する(図6ステップS16)。
図10はセンサノード1のCPU5によって実現される機能手段を示すブロック図である。CPU5によって実現される機能手段としては、センサデータ送信部18と、機能設定部19と、コスト決定部20と、コスト通知部21と、中継ノード選択部22と、データ中継部23とがある。CPU5は、メモリ4に格納されたプログラムを実行することにより、これらの機能手段を実現する。
【0039】
各センサノード1は、サーバ6までの直通の無線通信路を確保できない場合、自ノードの無線通信範囲内にあり、かつサーバ6までの無線通信路が確保されている幾つかのセンサノード1を中継ノードとして選択する。この中継ノードの選択基準としては、まず、通信コスト、すなわちサーバ6まで通信する際のノイズ等による通信パケットの損失頻度が挙げられる。センサネットワークにおいては、データをできる限り高い確度でサーバ6まで送信するために、パケット損失の少ない無線通信路を選択することが重要である。
【0040】
さらに、中継ノードの別の選択基準として、センシングコスト、すなわち重要な情報をセンシングするのに必要なリソースが挙げられる。ここで、リソースとは、バッテリの容量だけでなく、センサノード1のCPU5の使用頻度やメモリ4の使用頻度を指している。センサネットワークにおいては、センシング機能を確保することは基本であり、重要な情報をセンシングしているノード1はリソースをそれだけ消費する。通信によるリソース消費がセンシング機能に影響を与える可能性があるため、できるだけセンシング機能に専念させることが重要であり、もし可能であるならばセンシングコストの低いセンサノード1を中継ノードとして選択することが重要である。よって、通信コストとセンシングコストの和が最小のセンサノード1を中継ノードとして選択することになる。
【0041】
各センサノード1の機能設定部19は、サーバ6から通知された機能を、自ノードが実現すべき機能として設定する。これにより、各センサノード1は、センシングノードあるいは中継ノードとして動作する。なお、センシングノードは、主たる動作としてセンシングを行うが、場合によっては中継ノードとしても動作する。
【0042】
各センサノード1のコスト決定部20は、サーバ6から通知された機能と自ノードのリソースにより、自ノードのセンシングコストを決定する。サーバ6から通知された機能が中継機能である場合、このセンサノード1のセンシングコストは0である。また、コスト決定部20は、サーバ6から通知された機能がセンシング機能である場合、自ノードの現在のリソースにより、自ノードのセンシングコストを決定する。さらに、コスト決定部20は、例えば送受信データの損失頻度などに基づいて、自ノードの通信コストを決定する。
【0043】
各センサノード1のコスト通知部21は、コスト決定部20が決定した自ノードの通信コストとセンシングコストを、例えば一定時間毎に無線通信機能モジュール3を通じて他のセンサノード1に無線送信する。
【0044】
各センサノード1の中継ノード選択部22は、サーバ6までの直通の無線通信路を確保できない場合、無線通信範囲内にある他のセンサノード1から通信コストとセンシングコストのデータを受信し、自ノードの無線通信範囲内にあるセンサノード1のうち、通信コストとセンシングコストの和が最小となるセンサノード1を中継ノードとして選択する(図6ステップS16)。なお、各センサノード1の中継ノード選択部22は、サーバ6宛に信号を無線送信し、サーバ6からの応答がない場合に、サーバ6までの直通の無線通信路を確保できていないと判断する。
以上のようにして、センサネットワークを再構成することができ、学習時の動作が終了する。
【0045】
図11に事象認識システムにおいてセンサネットワークを再構成する動作の1例を示す。図11は、サーバ6に直接センサデータを送信できないセンサノード1−Aがサーバ6にデータを送信する場合を示している。センサノード1−Aは、無線通信範囲内にあるセンサノード1−B,1−C,1−Dのいずれかを中継ノードとして選択する。このとき、センサノード1−Bは、センシングノードとして動作すべきことをサーバ6から通知されている。また、センサノード1−C,1−Dは、中継ノードとして動作すべきことをサーバ6から通知されている。
【0046】
センシングノードのセンシングコストを10とし、センシングを行わない中継ノードのセンシングコストを0とする。また、センサノード1−Bのサーバ6ヘの通信コストを3、センサノード1−Cのサーバ6への通信コストを5、センサノード1−Dのサーバ6への通信コストを4とする。この場合、センサノード1−Aは、通信コストとセンシングコストの和が最小であるセンサノード1−Dを中継ノードとして選択する。センサノード1−Cは、センシングにも通信にも寄与しておらず、センサノード1−Dの代わりの中継ノードとして休眠状態に遷移したり、未使用センサノードとしてセンサネットワークから除外されたりする。
【0047】
図12にセンサネットワークを再構成する動作の別の例を示す。ここでは、図11の例と同じ構成において、センサノード1−B,1−C,1−Dの通信コストをそれぞれ3、15、20とする。センサノード1−Cと1−Dは、ノイズの混濁が多いノイズ領域120に含まれるために、通信品質が悪く、通信コストが高くなっている。よって、センサノード1−Cや1−Dを中継ノードとして選択しても、センサデータがサーバ6まで届かない可能性が高い。
【0048】
センサノード1−Aは、通信コストとセンシングコストの和が最小であるセンサノード1−Bを中継ノードとして選択する。この場合は、リソースを消費することになるが、センサノード1−Bは、センシングノードとして動作すると同時に中継ノードとしても動作する。センサノード1−Cや1−Dは、他の場所に設置されたりセンサネットワークから除外されたりする。
【0049】
なお、ステップS15で各センサノード1に機能が通知される前の初期センサネットワークでは、各センサノード1は、センシングノードとして動作すると同時に中継ノードとしても動作する。初期センサネットワークでは、各センサノード1の中継ノード選択部22は、サーバ6までの直通の無線通信路を確保できない場合、通信コストのみを考慮し、自ノードの無線通信範囲内にあるセンサノード1のうち、通信コストが最小となるセンサノード1を中継ノードとして選択する。
【0050】
学習時および学習後の通常の認識動作について、各センサノード1のセンサデータ送信部18は、センシングノードとして動作する場合、前述のとおり、自ノードの状態測定用センサ2がユーザの存在を検出したときに、センサデータを無線通信機能モジュール3を通じて無線送信する。このとき、センサデータ送信部18は、サーバ6までの直通の無線通信路を確保できている場合は、サーバ6宛にセンサデータを送信し、サーバ6までの直通の無線通信路を確保できない場合は、自ノードの中継ノード選択部22が選択した中継ノード宛にセンサデータを送信する。
【0051】
学習時および学習後の通常の認識動作について、各センサノード1のデータ中継部23は、センシングノードまたは中継ノードとして動作する場合、他のセンサノード1から受信したセンサデータを無線通信機能モジュール3を通じて転送する。このとき、データ中継部23は、サーバ6までの直通の無線通信路を確保できている場合は、サーバ6宛にセンサデータを転送し、サーバ6までの直通の無線通信路を確保できない場合は、自ノードの中継ノード選択部22が選択した中継ノード宛にセンサデータを転送する。
【0052】
以上のように、本実施の形態では、学習用のサンプル事象を検出したセンサノード1の時系列のセンサデータから特徴ベクトルを生成し、この特徴ベクトルとサンプル事象の望ましい認識結果とから決定木を生成し、決定木に従って各センサノードの機能を選択し、選択した機能を各センサノード1に通知するようにしたので、事象の認識にとって重要な最低限必要なセンシングノードとセンシングを行わない中継ノードとを特定することが可能となる。したがって、本実施の形態では、認識したい事象の例を予め学習用のサンプル事象として与えて、事象認識システムを学習させ、決定木を生成させるようにすれば、事象認識システムが事象の認識にとって重要な最低限必要なセンシングノードを自動的に選択するので、人の行動パターンなどの変化する事象に対応することができる。また、本実施の形態では、センシング能力を犠牲にすることなく最小限のセンサノードによるセンサネットワークを構成することが可能となる。
【0053】
なお、センサネットワークの再構成は、学習時だけでなく、学習後の動作においても同様に実行するようにしてもよい。
例えば、各センサノード1のコスト決定部20は、一定時間毎に自ノードの最新の通信コストと最新のセンシングコストを決定し、この通信コストとセンシングコストをコスト通知部21が無線送信する。各センサノード1の中継ノード選択部22は、サーバ6までの直通の無線通信路を確保できない場合、無線通信範囲内にある他のセンサノード1から受信した最新の通信コストと最新のセンシングコストに基づいて中継ノードを選択し直す。これにより、最新の通信状況やセンサノード1の最新のリソースに応じて、センサネットワークを再構成することができる。
【0054】
また、本実施の形態では、事象認識システムで認識する事象として、ユーザの行動を挙げたが、これに限るものではなく、例えば室内の状態などの環境の状態を、認識する事象としてもよい。
【産業上の利用可能性】
【0055】
本発明は、複数のセンサノードを利用して事象を認識する技術に適用することができる。
【図面の簡単な説明】
【0056】
【図1】本発明の実施の形態に係るセンサノードの構成を示すブロック図である。
【図2】本発明の実施の形態に係るサーバの構成を示すブロック図である。
【図3】本発明の実施の形態に係る事象認識システムの構成を示す図である。
【図4】本発明の実施の形態においてサーバのCPUによって実現される機能手段を示すブロック図である。
【図5】本発明の実施の形態におけるセンサノードの配置例を表す平面図である。
【図6】本発明の実施の形態に係るサーバの学習時の動作を示すフローチャートである。
【図7】本発明の実施の形態におけるセンサノードの検出例を示す図である。
【図8】本発明の実施の形態におけるセンサ検出ベクトルの例を示す図である。
【図9】本発明の実施の形態における決定木の例を示す図である。
【図10】本発明の実施の形態においてセンサノードのCPUによって実現される機能手段を示すブロック図である。
【図11】本発明の実施の形態においてセンサネットワークを再構成する動作の1例を示す図である。
【図12】本発明の実施の形態においてセンサネットワークを再構成する動作の別の例を示す図である。
【符号の説明】
【0057】
1…センサノード、2…状態測定用センサ、3…無線通信機能モジュール、4…メモリ、5…CPU、6…サーバ、7…メモリ、8…CPU、9…センサノード用送受信器、10…通信インタフェース、12…センサノード制御部、13…データベース、14…事象認識部、15…決定木生成部、16…センサノード機能選択部、17…センサノード機能通知部、18…センサデータ送信部、19…機能設定部、20…コスト決定部、21…コスト通知部、22…中継ノード選択部、23…データ中継部。


【特許請求の範囲】
【請求項1】
事象を検出するセンシング機能および通信機能を備えた複数のセンサノードと、これらのセンサノードからデータを収集するサーバとからなる事象認識システムにおいて、
前記サーバは、
学習用のサンプル事象を検出したセンサノードの時系列のセンサデータから特徴ベクトルを生成し、この特徴ベクトルと前記サンプル事象の望ましい認識結果とから、事象認識の決定木を生成する決定木生成手段と、
学習時に前記決定木に従って各センサノードの機能を選択するセンサノード機能選択手段と、
学習時に前記センサノード機能選択手段によって選択された機能を各センサノードに通知するセンサノード機能通知手段と、
学習後の動作において事象を検出したセンサノードからセンサデータが得られたときに、前記決定木を用いて事象を認識する事象認識手段とを備えることを特徴とする事象認識システム。
【請求項2】
請求項1記載の事象認識システムにおいて、
前記センサノード機能選択手段は、各センサノードをデータ中継を行う中継ノードと、事象の検出とデータ中継の両方を行うセンシングノードに区分することを特徴とする事象認識システム。
【請求項3】
請求項1記載の事象認識システムにおいて、
前記センサノードは、
事象を検出するセンサと、
自ノードの通信コストとセンシングコストを決定するコスト決定手段と、
このコスト決定手段が決定した通信コストとセンシングコストを他のセンサノードに通知するコスト通知手段と、
前記サーバまでの直通の通信路を確保できない場合に、通信範囲内にある他のセンサノードから通信コストとセンシングコストのデータを受信し、自ノードの通信範囲内にあるセンサノードのうち、通信コストとセンシングコストの和が最小となるセンサノードを中継ノードとして選択する中継ノード選択手段と、
前記センサが事象を検出したときに、事象を検出したことを示すセンサデータを送信するセンサデータ送信手段と、
他のセンサノードからセンサデータを受信したときに、前記サーバまでの直通の通信路を確保できている場合は、受信したセンサデータを前記サーバ宛に転送し、前記サーバまでの直通の通信路を確保できない場合は、受信したセンサデータを前記中継ノード選択手段が選択した中継ノード宛に転送するデータ中継手段とを備えることを特徴とする事象認識システム。
【請求項4】
事象を検出するセンシング機能および通信機能を備えた複数のセンサノードと、これらのセンサノードからデータを収集するサーバとを用いて事象を認識する事象認識方法において、
サーバが、学習用のサンプル事象を検出したセンサノードの時系列のセンサデータから特徴ベクトルを生成し、この特徴ベクトルと前記サンプル事象の望ましい認識結果とから、事象認識の決定木を生成する決定木生成ステップと、
サーバが、学習時に前記決定木に従って各センサノードの機能を選択するセンサノード機能選択ステップと、
サーバが、学習時に前記センサノード機能選択ステップで選択した機能を各センサノードに通知するセンサノード機能通知ステップと、
サーバが、学習後の動作において事象を検出したセンサノードからセンサデータが得られたときに、前記決定木を用いて事象を認識する事象認識ステップとを備えることを特徴とする事象認識方法。
【請求項5】
請求項4記載の事象認識方法において、
前記センサノード機能選択ステップは、各センサノードをデータ中継を行う中継ノードと、事象の検出とデータ中継の両方を行うセンシングノードに区分することを特徴とする事象認識方法。
【請求項6】
請求項4記載の事象認識方法において、
センサノードが、自ノードの通信コストとセンシングコストを決定するコスト決定ステップと、
センサノードが、前記コスト決定ステップで決定した通信コストとセンシングコストを他のセンサノードに通知するコスト通知ステップと、
センサノードが、前記サーバまでの直通の通信路を確保できない場合に、通信範囲内にある他のセンサノードから通信コストとセンシングコストのデータを受信し、自ノードの通信範囲内にあるセンサノードのうち、通信コストとセンシングコストの和が最小となるセンサノードを中継ノードとして選択する中継ノード選択ステップと、
センサノードが、事象を検出したときに、事象を検出したことを示すセンサデータを送信するセンサデータ送信ステップと、
センサノードが、他のセンサノードからセンサデータを受信したときに、前記サーバまでの直通の通信路を確保できている場合は、受信したセンサデータを前記サーバ宛に転送し、前記サーバまでの直通の通信路を確保できない場合は、受信したセンサデータを前記中継ノード選択ステップで選択した中継ノード宛に転送するデータ中継ステップとを備えることを特徴とする事象認識方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図4】
image rotate


【公開番号】特開2009−251715(P2009−251715A)
【公開日】平成21年10月29日(2009.10.29)
【国際特許分類】
【出願番号】特願2008−95908(P2008−95908)
【出願日】平成20年4月2日(2008.4.2)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】