(57)【特許請求の範囲】
【請求項１】
少なくとも１台のノード装置にセンサを接続した複数のノード装置間で、観測対象の状態を示す状態種別ごとの状態値を交換して当該観測対象の状態を観測するセンサネットワークシステムであって、
前記各ノード装置のそれぞれは、
前記観測対象の複数の状態値を状態種別ごとに記憶する状態記憶手段と、
この状態記憶手段から、他のノード装置に送信する予め定めた状態種別の状態値を選択して、ネットワークに接続された他のノード装置にメッセージとして送信する状態送信手段と、
前記他のノード装置から送信されるメッセージを受信して、当該メッセージに記述されている状態種別ごとの状態値に基づいて、前記状態記憶手段に記憶されている状態値を更新する状態受信手段と、を備え、
前記状態受信手段は、
前記受信したメッセージに含まれる予め定めた状態種別に対応する状態値を前記状態記憶手段から抽出するノード間状態更新用状態抽出手段と、
前記受信したメッセージに含まれる予め定めた状態種別ごとの状態値に基づいて、前記ノード間状態更新用状態抽出手段で抽出した状態値を更新するノード間状態更新手段と、
このノード間状態更新手段で更新された状態値を前記状態記憶手段に書き込むノード間状態書込手段と、を備え、
前記センサを接続したノード装置は、前記センサの観測結果に基づいて、前記状態記憶手段に記憶されている少なくとも１つ以上の状態値を更新する観測状態更新手段をさらに備えることを特徴とするセンサネットワークシステム。
【請求項２】
前記観測状態更新手段は、
前記センサの観測結果に対応する予め定めた状態値を前記状態記憶手段から抽出するセンサ関連状態抽出手段と、
前記センサの観測結果の状態値に基づいて、前記センサ関連状態抽出手段で抽出した状態値を更新するセンサ関連状態更新手段と、
このセンサ関連状態更新手段で更新された状態値を前記状態記憶手段に書き込むセンサ関連状態書込手段と、
を備えることを特徴とする請求項１に記載のセンサネットワークシステム。
【請求項３】
前記ノード装置の少なくとも１台に、前記センサを制御する制御装置が接続され、
当該制御装置を接続したノード装置は、
前記センサの制御に対応する予め定めた状態値を前記状態記憶手段から抽出する制御関連状態抽出手段と、
この制御関連状態抽出手段で抽出された状態値から前記センサに対応する制御情報を生成する制御情報生成手段と、
この制御情報生成手段で生成された制御情報を制御信号として前記制御装置に出力する制御信号出力手段と、
をさらに備えることを特徴とする請求項１または請求項２に記載のセンサネットワークシステム。
【請求項４】
少なくとも１台のノード装置における前記ノード間状態更新手段が、時系列の複数の状態値に基づいて現在または未来の状態値を算出することで当該状態値を更新することを特徴とする請求項３に記載のセンサネットワークシステム。
【請求項５】
前記状態記憶手段は、前記状態種別を区別するための要素名と、状態の属性を区別するための属性名とからなる木構造のデータ構造により、前記状態値を記憶することを特徴とする請求項１から請求項４のいずれか一項に記載のセンサネットワークシステム。
【請求項６】
前記状態送信手段は、前記状態記憶手段に記憶されている複数の状態値から、他のノード装置に送信する状態値の数を、予め定めたノード間の物理的距離または論理的距離に応じて増減させることを特徴とする請求項１から請求項５のいずれか一項に記載のセンサネットワークシステム。
【請求項７】
前記状態送信手段は、前記状態記憶手段に記憶されている複数の状態値から、他のノード装置に送信する前記ノード装置の数を、前記ノード装置または前記ネットワークの負荷に応じて増減させることを特徴とする請求項１から請求項５のいずれか一項に記載のセンサネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサで観測される観測対象を、ネットワークに接続した複数のノード装置で分散して観測処理するセンサネットワークシステムに関する。
【背景技術】
【０００２】
近年、地震や土砂崩れ等の自然災害の監視、屋内外における不審人物の監視や追跡、店舗や医療機関における顧客や患者の行動パターンの解析等、主に広大な環境や障害物により遮蔽の多い環境、電子機器や機械に対して過酷な環境における監視を、分散配置されたセンサ群（センサノード）からの情報収集によって行うセンサネットワークシステムに関する技術が開示されている（特許文献１参照）。
【０００３】
また、従来のネットワークシステムは、各センサノードが、観測を行うセンサ機能のほか、観測情報を処理する演算機能や、他の複数のセンサノードと通信を行う通信機能を有することが一般的である。また、一般に、ネットワークシステムは、各センサノードを冗長配置することで、センサノードの故障や通信支障に対応することができる。また、ネットワークのトポロジはスター型、バス型、リング型等、任意の形態があり、各センサノードの配置は、通信が確保される限り自由であり、動的に変更することができる。
【０００４】
さらに、このようなセンサネットワークにおいて、センサノードを積極的に移動制御するシステム（センサネットワークロボットシステム）に関する技術が開示されている（特許文献２参照）。このセンサネットワークロボットシステムは、例えば、ラジオコントロールの航空機（飛行機、ヘリコピプター、飛行船等）、車両型やキャタピラ型の車両、脚歩行型のロボット等に、カメラ、温度センサ、レーダ等のセンサを搭載して、自律的・能動的な移動観測を行うものである。
【特許文献１】特開２００７−０８０１９０号公報
【特許文献２】特開２００６−３３８０８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、前記した従来のセンサネットワークシステムでは、システムの構成要素であるセンサノードの機能、センサノード間でやりとりされる情報（メッセージ）の種類、センサノード群から収集されたデータの統合手法、および、統合されたデータから抽出される情報を固定的に定義する必要があった。このため、すでに構築したセンサネットワークシステムに新たなセンサノードを追加する場合、固定的に定義された機能、プロトコルおよびフォーマットに準拠する必要があるため、拡張性に乏しいという問題があった。すなわち、従来のセンサネットワークシステムは、センサノードに機能を追加したり、抽出すべき情報を変更したりするためには、システム全体の構成や動作を一斉に変更しなければならないという問題があった。
【０００６】
また、従来のセンサネットワークシステムでは、２つ以上のセンサネットワークシステムを構築する場合、たとえ共通に利用可能なセンサノードの情報が存在する場合でも、この情報をお互いのシステムで共有することができず、効率が悪いという問題があった。
【０００７】
本発明は、以上のような課題を解決するためになされたものであり、各ノードの機能やノード間のメッセージの内容を限定せずに、柔軟性や拡張性のあるセンサネットワークシステムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、前記目的を達成するために創案されたものであり、まず、請求項１に記載のセンサネットワークシステムは、少なくとも１台のノード装置にセンサを接続した複数のノード装置間で、観測対象の状態を示す状態種別ごとの状態値を交換して当該観測対象の状態を観測するセンサネットワークシステムであって、各ノード装置のそれぞれは、状態記憶手段と、状態送信手段と、状態受信手段と、を備え、この状態受信手段には、ノード間状態更新用状態抽出手段と、ノード間状態更新手段と、ノード間状態書込手段と、を備える構成とした。また、センサネットワークシステムにおいて、センサを接続したノード装置には、観測状態更新手段をさらに備える構成とした。
【０００９】
かかる構成において、センサネットワークシステムは、センサが接続された少なくとも１台のノード装置が観測状態更新手段によって、センサの観測結果に基づいて、状態記憶手段に記憶されている少なくとも１つ以上の状態値を更新する。また、センサネットワークシステムは、各ノード装置が状態送信手段によって、自ノード装置の状態記憶手段から、他のノード装置に送信する予め定めた状態種別の状態値を選択して、ネットワークに接続された他のノード装置にメッセージとして送信する。また、センサネットワークシステムは、各ノード装置が状態受信手段によって、他のノード装置から送信されるメッセージを受信して、当該メッセージに記述されている状態種別ごとの状態値に基づいて、自ノード装置の状態記憶手段に記憶されている状態値を更新する。これによって、センサネットワークシステムは、各ノード装置がメッセージを送受信し合うことで、観測対象の状態が各ノード装置に記憶されることになる。
【００１０】
なお、このとき、各ノード装置の状態受信手段は、ノード間状態更新用状態抽出手段によって、受信したメッセージに含まれる状態種別に対応する状態値を状態記憶手段から抽出し、ノード間状態更新手段によって、受信したメッセージに含まれる状態種別ごとの状態値に基づいて、その抽出した状態値を更新し、さらに、ノード間状態書込手段によって、更新された状態値を状態記憶手段に書き込む。これによって、センサネットワークシステムは、各ノード装置が必要な状態のみを抽出し、必要最小限の状態のみを状態記憶手段に記憶することが可能になる。
【００１１】
また、請求項２に記載のセンサネットワークシステムは、請求項１に記載のセンサネットワークシステムにおいて、観測状態更新手段が、センサ関連状態抽出手段と、センサ関連状態更新手段と、センサ関連状態書込手段と、を備える構成とした。
【００１２】
かかる構成において、センサネットワークシステムは、センサを接続したノード装置のセンサ関連状態抽出手段によって、センサの観測結果に対応する予め定めた状態値を状態記憶手段から抽出し、センサ関連状態更新手段によって、センサの観測結果の状態値に基づいて、その抽出した状態値を更新し、さらに、センサ関連状態書込手段によって、更新された状態値を状態記憶手段に書き込む。これによって、センサネットワークシステムは、センサを接続したノード装置において、センサに関連する必要最小限の状態のみが更新され、各ノード装置に状態が送信されることになる。
【００１３】
さらに、請求項３に記載のセンサネットワークシステムは、請求項１または請求項２に記載のセンサネットワークシステムにおいて、ノード装置の少なくとも１台に、センサを制御する制御装置が接続され、その制御装置を接続したノード装置が、制御関連状態抽出手段と、制御情報生成手段と、制御信号出力手段と、を備える構成とした。
【００１４】
かかる構成において、センサネットワークシステムは、制御装置を接続したノード装置が、制御関連状態抽出手段によって、センサの制御に対応する予め定めた状態値を状態記憶手段から抽出する。そして、センサネットワークシステムは、制御情報生成手段によって、抽出された状態値からセンサに対応する制御情報を生成し、制御信号出力手段によって、制御信号として出力する。これによって、センサネットワークシステムは、制御装置を接続したノード装置において、制御装置の制御に必要な状態のみを状態記憶手段から読み出して制御信号を生成し、制御装置を制御する。
【００１５】
また、請求項４に記載のセンサネットワークシステムは、請求項３に記載のセンサネットワークシステムにおいて、少なくとも１台のノード装置におけるノード間状態更新手段が、時系列の複数の状態値に基づいて現在または未来の状態値を算出することで当該状態値を更新することを特徴とする。
【００１６】
かかる構成において、センサネットワークシステムは、ノード装置のノード間状態更新手段によって、時系列の状態値に基づいて、予め定めたモデルを基準に、現在または未来の状態値を算出する。例えば、このモデルは、等速度運動モデル、等加速度運動モデル等である。このように、予め定めたモデルを基準にすることで、状態値を推定することができる。
【００１７】
さらに、請求項５に記載のセンサネットワークシステムは、請求項１から請求項４のいずれか一項に記載のセンサネットワークシステムにおいて、状態記憶手段が、状態種別を区別するための要素名と、状態の属性を区別するための属性名とからなる木構造のデータ構造により状態値を記憶することを特徴とする。
【００１８】
かかる構成において、センサネットワークシステムは、状態値を木構造で管理する。これによって、複数の同一の属性の状態値が、要素名と属性名とで一意に特定されることになる。
【００１９】
また、請求項６に記載のセンサネットワークシステムは、請求項１から請求項５のいずれか一項に記載のセンサネットワークシステムにおいて、状態送信手段が、状態記憶手段に記憶されている複数の状態値から、他のノード装置に送信する状態値の数を、予め定めたノード間の物理的距離または論理的距離に応じて増減させることを特徴とする。
かかる構成において、センサネットワークシステムは、ノード間の距離が近い場合には、ノード装置間で送受信する状態値の数を増大させ、ノード間の距離が遠い場合には、ノード装置間で送受信する状態値の数を減少させる。
【００２０】
さらに、請求項７に記載のセンサネットワークシステムは、請求項１から請求項５のいずれか一項に記載のセンサネットワークシステムにおいて、状態送信手段が、状態記憶手段に記憶されている複数の状態値から、他のノード装置に送信するノード装置の数を、ノード装置またはネットワークの負荷に応じて増減させることを特徴とする。
【００２１】
かかる構成において、センサネットワークシステムは、ノード装置またはネットワークの負荷が大きい場合には、送受信するノード装置の数を減少させ、ノード装置またはネットワークの負荷が小さい場合には、送受信するノード装置の数を増大させる。
【発明の効果】
【００２２】
本発明は、以下に示す優れた効果を奏するものである。
請求項１に記載の発明によれば、センサネットワークシステムは、センサで観測した観測対象の状態を、複数のノード装置間でメッセージ交換することで、各ノード装置が観測対象の状態を分散して管理することができる。これによって、センサネットワークシステムは、ノード装置間で負荷の分散や機能の分散を行うことができる。また、各ノード装置は個々に処理すべき状態種別を定めておくため、他のノード装置に関連する状態種別が増加した場合であっても、あるいは、複数のセンサネットワークを接続した場合であっても、当該ノード装置の動作に影響がなく、センサネットワークの拡張を容易に行うことができ、柔軟性、拡張性のあるシステムを構築することができる。
【００２３】
請求項２に記載の発明によれば、センサネットワークシステムは、センサを接続したノード装置が、自己のノード装置に接続されたセンサに関連する状態のみを更新することができる。これによって、センサネットワークシステムは、複数のセンサを各ノード装置に接続し、複数の観測対象を複数のセンサによって観測することが可能になる。
【００２４】
請求項３に記載の発明によれば、センサを制御する制御装置を、観測対象の状態（例えば、位置、速度等）に応じて制御することができる。また、複数のノード装置に制御装置が接続されている場合であっても、各ノード装置は、自己のノード装置に接続されたセンサに対応する状態のみから自己のノード装置に接続された制御装置を制御することができる。
【００２５】
請求項４に記載の発明によれば、センサネットワークシステムは、現在または未来の状態値を推定することができる。この状態値の推定は、センサネットワークシステム内の少なくとも１台のノード装置で行えばよく、センサネットワークシステム内で機能を分散することができる。また、センサネットワークシステムは、状態値を推定することができるため、制御装置を接続したノード装置が行う制御の精度を高めることができる。
【００２６】
請求項５に記載の発明によれば、センサネットワークシステムは、状態値を要素名と属性名によって一意に特定することができるため、同一の属性であっても複数の要素名によって区別することが可能になる。これによって、センサネットワークシステムは、観測対象が複数存在する場合であっても、個々の状態をノード装置間で交換することができ、複数の観測対象の観測を行うことができる。
【００２７】
請求項６または請求項７に記載の発明によれば、センサネットワークシステムは、システム全体の負荷を分散させることができる。これによって、センサネットワークシステムは、負荷が増大した場合であっても、メッセージ交換を継続して行うことができ、システムの停止を防止することができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施形態について図面を参照して説明する。
［センサネットワークシステムの概要］
最初に、図１を参照して、本発明の実施形態に係るセンサネットワークシステムの概要について説明する。図１は、本発明の実施形態に係るセンサネットワークシステムの構成例を示す構成図である。
【００２９】
センサネットワークシステムＳは、複数のノード装置１間で、観測対象Ｔの状態を交換して当該観測対象Ｔの状態を観測するものである。このセンサネットワークシステムＳは、少なくとも１台のノード装置１が、センサ３を接続し、観測対象Ｔの状態を観測する。なお、センサネットワークシステムＳは、機能が異なる複数のノード装置１で構成されている。図１では、センサネットワークシステムＳを、観測ノード１Ａ、制御ノード１Ｂ、状態推定ノード１Ｃ、インタフェースノード１Ｄ、複合ノード１Ｅとで構成した例を示している。このセンサネットワークシステムＳは、各ノード装置１を通信路（ネットワーク）２に接続し、ノード装置１間で、観測対象Ｔの状態、ノード装置１の状態等をメッセージ７で交換することで、個々のノード装置１の機能に応じて観測対象Ｔの状態を観測する。なお、ノード装置１は、設定値を変更されることで、それぞれの機能を有する個別のノード装置１として機能することができる。
【００３０】
観測ノード１Ａは、センサ３から入力される観測信号に基づいて、観測対象Ｔの状態を観測するものである。例えば、センサ３がビデオカメラである場合、観測ノード１Ａは、センサ３から入力される映像から、観測対象Ｔの位置を検出し、その位置情報を観測状態とする。なお、センサ３は、ビデオカメラに限らず、任意の種類、性能のもので構わない。例えば、センサ３は、距離計、レーダ、加速度センサ、ジャイロセンサ、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）受信機、ＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）タグ受信機、温度センサ、湿度センサ、風力計、風向計、気圧センサ、ガス検知センサ等、あらゆるセンサから、観測対象Ｔを観測する際の用途に応じて必要な種類、性能のものを、必要な数だけ組み合わせて使用することができる。
【００３１】
制御ノード１Ｂは、センサ３を制御する制御装置４を接続し、通信路２を介して取得した観測対象Ｔの状態に応じて制御装置４を制御するものである。例えば、制御装置４が、ビデオカメラ（センサ３）の雲台である場合、制御ノード１Ｂは、現在のパン、チルト等を観測信号として入力し、観測状態である観測対象Ｔの位置情報に基づいて、観測対象Ｔを追跡するためのパン、チルト等の制御信号を制御装置４に出力する。なお、制御ノード１Ｂは、雲台を制御するものに限定されず、センサ３の種類に応じた制御信号を入出力するものとして構成することができる。
【００３２】
状態推定ノード１Ｃは、通信路２を介して取得した観測対象Ｔの状態を逐次推定するものである。例えば、状態推定ノード１Ｃは、時々刻々と変化する観測対象Ｔの位置情報に基づいて、観測対象Ｔの現在位置あるいは未来位置を推定する。なお、状態推定ノード１Ｃは、位置推定に限らず、気圧推定、温度推定等、センサ３の種類に応じた状態を推定するものとして構成することができる。
【００３３】
インタフェースノード１Ｄは、キーボード等の入力装置５を接続し、操作者が入力する入力信号を観測情報として入力し、観測対象Ｔの状態を任意に更新、変更するユーザインタフェースの機能を有するものである。また、インタフェースノード１Ｄは、表示装置等の出力装置６を接続し、観測対象Ｔの状態を出力装置６に出力し、操作者に観測対象Ｔの状態を提示するユーザインタフェースの機能を有するものでもある。また、このインタフェースノード１Ｄは、各ノード装置１の状態（機能）を変更するための設定値を入力するものでもある。
【００３４】
複合ノード１Ｅは、観測ノード１Ａ、制御ノード１Ｂ、状態推定ノード１Ｃおよびインタフェースノード１Ｄの機能を複数有するものである。
このようなセンサネットワークシステムＳは、種々のノード装置１のうちで、少なくとも１台の観測ノード１Ａを含んだ２台以上のノード装置１でシステムを構成することができる。このシステム構成の規模は、観測対象Ｔに応じて変更することができる。例えば、複数の地点で観測を行う必要がある場合、観測ノード１Ａを複数台とすることができる。このように、センサネットワークシステムＳは、複数のノード装置１間で、各ノード装置１が保持している状態を、通信路２を介してメッセージ７で交換することで、ノード装置１間で情報を共有しつつ、効率的に観測対象Ｔの状態を観測することができる。
【００３５】
また、各ノード装置１の機能を設定値によって変更することで、自由にノード装置１の配置を変えたり、増設したり等の設計変更を容易に行うことができる。また、センサネットワークシステムＳは、ノード装置１間で、観測対象Ｔの状態のみならず、自ノード装置あるいは他ノード装置の状態を併せてメッセージ７で交換することで、ノード装置１の負荷や故障等の状態を相互に保有し、お互いの機能を補完したり、システム全体の負荷を平滑化したりすることができる。
【００３６】
［センサネットワークシステムの具体例］
ここで、図２を参照して、センサネットワークシステムＳを、ゴルフ場の監視を行うゴルフコース監視システムとして実現した具体例について説明する。図２は、センサネットワークシステムの一例であるゴルフコース監視システムの構成を模式的に示す模式図である。図２に示したゴルフコース監視システムＳＢは、ゴルフ場を観測対象空間、複数の人物を観測対象として、各人物の位置（例えば、ゴルフ場内における座標）等を人物の状態として観測するものである。
【００３７】
図２の例では、ゴルフコース監視システムＳＢは、観測ノード１Ａ，１Ａ，…、制御ノード１Ｂ，１Ｂ，…、状態推定ノード１Ｃ、インタフェースノード１Ｄおよび複合ノード１Ｅが通信路２によって接続されて構成されている。なお、通信路２は無線の通信路とするが、図２では、各ノード装置１を接続する論理的な経路を点線で視覚化して示している。
【００３８】
また、ここでは、観測ノード１Ａは、センサ３としてカメラを接続し、人物を観測対象としてその位置を状態として検出する機能を有する。また、制御ノード１Ｂは、制御装置（例えば、雲台）が付加されたセンサ３（図中、「制御可能なセンサ」）を接続し、人物の位置に基づいて、カメラのパン、チルト等を制御する機能を有する。また、状態推定ノード１Ｃは、時間とともに変化する人物の位置を推定することで、制御ノード１Ｂが行う制御動作をスムーズに動作させる機能を有する。また、インタフェースノード１Ｄは、入力装置５および出力装置６を接続し、観測対象を特定したり、観測結果を出力したりする機能を有する。なお、複合ノード１Ｅは、これらの機能を複数有する。
【００３９】
そして、ゴルフコース監視システムＳＢは、各ノード装置１が、メッセージとして、観測対象の状態を、通信路２を介して交換することで、ゴルフ場内の人物を監視する。このように、センサを観測するノード装置（観測ノード１Ａ）、センサを制御するノード装置（制御ノード１Ｂ）、人物の位置を推定するノード装置（状態推定ノード１Ｃ）等、各ノード装置１が機能や負荷を分散することで、ゴルフコース監視システムＳＢは、システム全体として効率的に人物監視を行うことができる。
以下、センサネットワークシステムＳ（ゴルフコース監視システムＳＢ）を構成するノード装置１について具体的に説明する。
【００４０】
［ノード装置の構成］
まず、図３を参照（適宜図１参照）して、本発明の実施形態に係るノード装置の構成について説明する。図３は、本発明の実施形態に係るノード装置の構成例を示すブロック図である。ここでは、ノード装置１は、状態記憶手段１０と、観測手段２０と、状態受信手段３０と、状態送信手段４０と、制御手段５０とを備える。
【００４１】
状態記憶手段１０は、観測対象Ｔの状態、自ノード装置の状態および他ノード装置の状態の少なくとも１つ以上を記憶するものであって、ハードディスク、半導体メモリ等の一般的な記憶装置である。この状態記憶手段１０に記憶されている状態は、観測手段２０、状態受信手段３０、状態送信手段４０および制御手段５０によって参照または更新される。
【００４２】
また、この状態記憶手段１０には、木構造によって各種の状態種別の状態値を階層的に記憶することとする。なお、センサネットワークシステムＳを、図２に示したシステム（ゴルフコース監視システムＳＢ）として実現した場合、例えば、観測対象空間（例えば、ゴルフ場）に存在し得る複数の観測対象（例えば、人物）について、その識別子（例えば、個人を特定する番号）と、その位置（例えば、ゴルフ場内における座標）と、その色（例えば、服色）とを階層化して状態種別とし、その状態種別に対応する状態を示す状態値を対応付けて記憶することとする。ここで状態（状態種別、状態値）は、数値、数値群、写像、文字列等のいずれであっても構わない。また、状態は、一定の規則や雑音によってその内容（数値、数値群、写像、文字列等）が変化するものである。
【００４３】
以下、Ｎ種類（Ｎは“０”以上の整数）の状態を、種別（以下、状態種別という）と状態値とで特定し、ｉ番目の状態種別をｗｉ、その状態値をｘｉと記載することとする。すなわち、状態記憶手段１０の全内容をＸ＝｛（ｗｉ，ｘｉ）｝ｉ∈｛１，２，…，Ｎ｝とする。なお、状態記憶手段１０に記憶される状態（ｗｉ，ｘｉ）の状態種別ｗｉは、外部から入力される観測入力によって状態値が変化する状態種別を少なくとも１種類以上含むこととする。また、状態記憶手段１０には、観測入力によって状態値が変化する際の変化の度合いを制御するためのパラメータを状態として記憶することとしてもよい。
【００４４】
ここで、図４を参照して、状態記憶手段１０に記憶されるデータのデータ構造について説明する。図４は、本発明の実施形態に係るノード装置の状態記憶手段に記憶されるデータのデータ構造を示す模式図である。
【００４５】
図４に示すように、状態記憶手段１０には、木構造によって各種の状態種別ｗｉの状態値ｘｉを階層的に記憶することとする。図４において、角丸のブロックは要素名を表し、矩形のブロックは要素の属性（属性名＋属性値）を表している。また、各要素には、“０”個以上の要素（子要素）または“０”個以上の属性をとることとする。また、各属性値には、木構造のルートから当該属性値に至る経路上の要素名列および属性名により識別される状態種別の状態値が記憶される。
【００４６】
ここでは、要素名に、“ＮＯＤＥ（ノード）”、“ＳＵＢＪＥＣＴ（機能）”、“ＯＢＪＥＣＴ（観測対象）”、“ＩＤ（識別子）”、“ＰＯＳＩＴＩＯＮ（位置）”、“ＣＯＬＯＲ（色）”、“ＨＹＰＯＴＨＥＳＩＳ（仮説）”を用い、属性名に、“ｎａｍｅ（ノード名）”、“ｔｙｐｅ（ノード種別）”、“ｖａｌｕｅ（状態値）”、“ｉｍｐｏｒｔａｎｃｅ（信頼度）”、“ｔｉｍｅｓｔａｍｐ（更新時刻）”を用いた例を示している。
【００４７】
まず、要素名について説明する。なお、要素名の後ろに大括弧付の数字（例えば、整数、自然数；以下、自然数の場合で説明する。）を付加することで、同一の要素名が複数存在している場合の識別に用いることとする。
【００４８】
“ＮＯＤＥ［１］”は、ノード装置１全体を特定するための要素名である。
“ＳＵＢＪＥＣＴ［ｎ］”は、自ノード装置１に関する情報（属性、機能）を示す要素名である。ここで、ノード装置１が単一機能である場合、ｎの値は“１”であり、複合機能である場合、ｎは２以上の値となる。なお、ここでは、ｎの値を自然数としたが、整数（“０”以上）を用いてもよい（以下の説明においても同様）。
“ＯＢＪＥＣＴ［ｎ］”は、ある観測対象に関する情報（種々の状態）を示す要素名である。なお、ｎにより複数の観測対象を区別することができる。
【００４９】
“ＩＤ［ｎ］”は、観測対象の識別子を示す要素名である。なお、ｎにより観測対象内に複数のアイデンティティを許容することができる。例えば、観測対象が人物である場合、その人物の顔、手等のそれぞれに状態を持たせることも可能である。ここでは、ｎを“１”とする。
【００５０】
“ＰＯＳＩＴＩＯＮ［ｎ］”は、観測対象の位置を示す要素名である。なお、ｎにより観測対象が複数位置に同時に存在する可能性を許容することができる。ここでは、ｎを“１”とする。
“ＣＯＬＯＲ［ｎ］”は、観測対象の色を示す要素名である。なお、ｎにより観測対象に複数色が存在する可能性を許容することができる。
“ＨＹＰＯＴＨＥＳＩＳ［ｎ］”は、状態値に関する仮説を示す要素名である。ｎにより複数の仮説を許容することができ、例えば、状態値の確率的な分布をモンテカルロ近似等によって求めることが可能になる。
【００５１】
次に、属性名について説明する。“ｎａｍｅ”は、ノード装置１に付された固有の名前（ノード名）を示す属性名である。また、“ｔｙｐｅ”は、ノード装置１の機能（ノード種別）を示す属性名である。“ｖａｌｕｅ”は、状態値を示す属性名である。なお、この属性名に対応付けられた状態値は、“ＰＯＳＩＴＩＯＮ”要素の属性である場合は、観測対象空間（ゴルフ場）内における座標であり、“ＣＯＬＯＲ”要素の属性である場合は、ＲＧＢ値の値を示すことになる。“ｉｍｐｏｒｔａｎｃｅ”は、状態値の信頼度を示す属性名である。また、“ｔｉｍｅｓｔａｍｐ”は、状態値の最終更新時刻を示す属性名である。
【００５２】
この例で示した属性名を用いることで、逐次モンテカルロ（ＳＭＣ：Ｓｅｑｕｅｎｔｉａｌ  Ｍｏｎｔｅ  Ｃａｒｌｏ）法やパーティクル（粒子）フィルタ（以下、ＳＭＣ等という）における個々の仮説あるいは個々のパーティクル（粒子）の持つ状態値と、個々の仮説あるいは個々のパーティクル（粒子）の持つ重み（ｗｅｉｇｈｔあるいはｉｍｐｏｒｔａｎｃｅ  ｗｅｉｇｈｔ）値と、更新時刻とを、記憶することができる。これによって、ＳＭＣ等を利用することが可能になり、精度の高い観測対象の観測が可能になる。
【００５３】
以下、状態記憶手段１０のデータ構造における階層構造について説明する。例えば、図４の例では、状態の全体集合Ｘを“ＮＯＤＥ”とし、この“ＮＯＤＥ”要素には、子要素として“ＳＵＢＪＥＣＴ”要素が１つと、“ＯＢＪＥＣＴ”要素が２つ存在する。さらに、“ＳＵＢＪＥＣＴ”要素には、“ｎａｍｅ”属性、“ｔｙｐｅ”属性が各１個対応付けられ、それらの属性値は、それぞれ“ＡＧＥＮＴ＿１（対象物）”、“ＴＲＡＣＫＥＲ（追跡）”である。これによって、センサネットワークシステムＳが、対象物の追跡を行うシステムであることを示している。
【００５４】
また、第１の“ＯＢＪＥＣＴ”要素には、“ＩＤ”要素が１つ、“ＰＯＳＩＴＩＯＮ”要素が１つ、“ＣＯＬＯＲ”要素が１つ存在する。そして、この第１の“ＯＢＪＥＣＴ”要素の“ＩＤ”要素には、“ＨＹＰＯＴＨＥＳＩＳ”要素が２つ存在し、各“ＨＹＰＯＴＨＥＳＩＳ”要素には、“ｉｍｐｏｒｔａｎｃｅ”属性、“ｖａｌｕｅ”属性、“ｔｉｍｅｓｔａｍｐ”属性が各１個対応付けられている。他の要素についても同様に、子要素をたどって属性が対応付けられている。
【００５５】
ここでは、木構造のルート（“ＮＯＤＥ”要素）から、各属性名に至るまでの要素名を順に連ねたもの（例えばＮＯＤＥ→ＯＢＪＥＣＴ→ＩＤ→ＨＹＰＯＴＨＥＳＩＳ→ｖａｌｕｅ）を状態種別ｗｉ、その属性値を当該状態種別ｗｉの状態値ｘｉとする。
【００５６】
なお、図４に示すように、任意の要素は、同一の要素名である子要素を複数有することとしてもよい。これによって、状態記憶手段１０には、要素名に対応する状態の候補を複数記憶することができ、複数存在し得る観測対象や状態に関する仮説を表現することができる。例えば、“ＮＯＤＥ”要素の下に存在する２つの“ＯＢＪＥＣＴ”要素は、２つの観測対象が存在することを示している。また、第１の“ＯＢＪＥＣＴ”要素の“ＩＤ”要素の下に存在する２つの“ＨＹＰＯＴＨＥＳＩＳ”要素は、状態に関する２つの仮説が存在することを示している。複数の仮説を許容することで、状態値の確率的な分布をモンテカルロ近似することが可能になる。
【００５７】
このように同一名の要素が複数存在し、それぞれを区別する必要がある場合は、図４に示すように、大括弧付の数字を後置して表現することができる。例えば、“ＮＯＤＥ”要素、第２の“ＯＢＪＥＣＴ”要素、“ＩＤ”要素、第１の“ＨＹＰＯＴＨＥＳＩＳ”要素の順に参照される“ｖａｌｕｅ”属性は、ＮＯＤＥ［１］→ＯＢＪＥＣＴ［２］→ＩＤ［１］→ＨＹＰＯＴＨＥＳＩＳ［１］→ｖａｌｕｅとして表すこととする。
【００５８】
また、複数存在し得る同一名の要素を区別する必要がない場合や、それらの要素群を集合的に表現する場合には、当該要素に後置する大括弧の内側に＊（アスタリスク）を表記することとする。例えば、“ＮＯＤＥ”要素、第２の“ＯＢＪＥＣＴ”要素、“ＩＤ”要素、“ＨＹＰＯＴＨＥＳＩＳ”要素群の順に参照される“ｖａｌｕｅ”属性は、ＮＯＤＥ［１］→ＯＢＪＥＣＴ［２］→ＩＤ［１］→ＨＹＰＯＴＨＥＳＩＳ［＊］→ｖａｌｕｅと表すこととする。
【００５９】
これによって、ＳＭＣ等における個々の仮説あるいは個々のパーティクル（粒子）の持つ状態値を“ｖａｌｕｅ”属性、それらの持つ重み値を“ｉｍｐｏｒｔａｎｃｅ”属性、更新時刻を“ｔｉｍｅｓｔａｍｐ”属性の属性値としてそれぞれ対応付けることで、ＳＭＣ等における状態推定をセンサネットワークシステムＳにより実現することができる。
図３に戻って、ノード装置１の構成について説明を続ける。
【００６０】
観測手段（観測状態更新手段）２０は、外部から観測信号を入力し、状態記憶手段１０に記憶されている状態を更新するものである。ここでは、観測手段２０は、観測信号入力手段２１と、第一状態抽出手段２２と、第一状態更新手段２３と、第一状態書込手段２４とを備える。
【００６１】
観測信号入力手段２１は、センサ３や入力装置５から入力される観測信号を入力し、デジタル信号に変換するものである。この観測信号入力手段２１で入力、変換されたデジタル信号は、観測値として第一状態更新手段２３に出力される。
【００６２】
例えば、ノード装置１にセンサ３としてカメラを接続する場合、観測信号入力手段２１は、カメラからアナログまたはデジタルの映像信号を入力し、点順次、線順次または面順次の走査によりデジタル信号の画素値列とする。
【００６３】
また、例えば、ノード装置１に入力装置５としてキーボードやマウスを接続する場合、観測信号入力手段２１は、キーボードから入力された信号をキーコード等の時系列のデジタル信号に変換して出力したり、マウスから入力される移動量やボタンクリック等の信号に応じて、画面上の座標値やパルス信号を生成し、デジタル信号として出力する。
【００６４】
第一状態抽出手段（センサ関連状態抽出手段）２２は、状態記憶手段１０から、予め定めた状態種別ｗｉの状態値ｘｉを選択的に読み出すものである。この第一状態抽出手段２２で抽出された状態群（状態種別の状態値の集合）は、第一状態更新手段２３に出力される。この第一状態抽出手段２２が状態記憶手段１０から読み出す状態値を示す状態種別は、ノード装置１に接続されたセンサ３からの観測信号により変化を受ける可能性のある状態種別を予め図示を省略した記憶手段に記憶しておくこととする。そして、第一状態抽出手段２２は、当該記憶手段に記憶されている状態種別ｗｉに対応する状態値ｘｉを状態記憶手段１０から読み出す。
【００６５】
例えば、センサ３からの観測信号が映像信号であって、ノード装置１が、観測対象（人物等）を追跡する機能を実現する場合、第一状態抽出手段２２は、観測対象の位置や特徴に関する状態種別の状態値を抽出する。具体的には、状態記憶手段１０に図４で説明した状態が記憶されている場合、第一状態抽出手段２２は、観測対象の位置の情報であるＮＯＤＥ［１］→ＯＢＪＥＣＴ［ｉ］→ＰＯＳＩＴＩＯＮ［１］→ＨＹＰＯＴＨＥＳＩＳ［ｍ］以下の属性群と、観測対象の特徴（色等）の情報であるＮＯＤＥ［１］→ＯＢＪＥＣＴ［ｊ］→ＣＯＬＯＲ［１］→ＨＹＰＯＴＨＥＳＩＳ［ｎ］以下の属性群とから選択的に抽出する。ここで、ｉおよびｊは異なる観測対象を区別するためのインデックス、ｍおよびｎは異なる仮説を区別するためのインデックスである。
【００６６】
なお、第一状態抽出手段２２は、これらのインデックスのすべての組み合わせに関して状態値を抽出することとしてもよいし、一部を抽出することとしてもよい。例えば、一部を抽出する場合、第一状態抽出手段２２は、ランダムサンプリングにより、状態値のサンプルを抽出する。
【００６７】
この場合、状態記憶手段１０内に予め定めた状態種別の状態値がＫ個（Ｋは自然数）存在した状態で、ランダムサンプリングによりＮ個（Ｎは自然数）の状態値を抽出するには、第一状態抽出手段２２は、以下の〈手順Ａ１〉〜〈手順Ａ３〉により状態値を抽出することができる。
〈手順Ａ１〉１以上Ｋ以下の乱数ｋ（例えば、一様乱数）を発生させる。
〈手順Ａ２〉Ｋ個の要素値の中からｋ番目の要素値を状態値として抽出する。
〈手順Ａ３〉前記〈手順Ａ１〉および〈手順Ａ２〉をＮ回繰り返す。
【００６８】
また、第一状態抽出手段２２は、“ＨＹＰＯＴＨＥＳＩＳ”要素の“ｉｍｐｏｒｔａｎｃｅ”属性の値（状態値）の大小に応じて、状態値を所定値幅で区分し、その区分ごとにサンプリングして出力したり、“ｉｍｐｏｒｔａｎｃｅ”属性の値の大小に応じた重み付けによる状態値の期待値を出力したり、“ｉｍｐｏｒｔａｎｃｅ”属性の値の大きいものから順に所定個数だけ状態値をサンプル抽出することとしてもよい。
【００６９】
この場合、状態記憶手段１０内に予め定めた状態種別の要素値がＫ個（Ｋは自然数）存在し、“ＨＹＰＯＴＨＥＳＩＳ”要素の“ｉｍｐｏｒｔａｎｃｅ”属性の値の大小に応じてＮ個（Ｎは自然数）の状態値を抽出するには、第一状態抽出手段２２は、以下の〈手順Ｂ１〉〜〈手順Ｂ６〉により状態値を抽出することができる。
〈手順Ｂ１〉Ｋ個の要素値の中のｋ番目の“ｉｍｐｏｒｔａｎｃｅ”属性の要素値を状態値（πｋとする）として抽出する。
〈手順Ｂ２〉以下の（１）式により正規化累積重み（ｗｋとする）を算出する。
【００７０】
【数１】
0005044459.tif 000002
【００７１】
〈手順Ｂ３〉０以上１未満の実数値の一様乱数ｒを発生させる。
〈手順Ｂ４〉ｗｋ−１≦ｒ≦ｗｋを満たすインデックスκを求める。
〈手順Ｂ５〉“ｉｍｐｏｒｔａｎｃｅ”属性の要素値のκ番目を状態値として抽出する。
〈手順Ｂ６〉前記〈手順Ｂ１〉〜〈手順Ｂ５〉をＮ回繰り返す。
【００７２】
以上の手順により、“ｉｍｐｏｒｔａｎｃｅ”属性の要素値に比例する確率でサンプリングを行うことができる。この手順は、逐次モンテカルロ法やパーティクルフィルタにおける「ｉｍｐｏｒｔａｎｃｅ  ｓａｍｐｌｉｎｇ」に相当するものである。なお、前記〈手順Ｂ３〉における実数値は、０．５以下の量子化ステップを有する小数値で代用してもよい。例えば、実数値に代えて、ＩＥＥＥ７５４形式による浮動小数点の値を用いてもよい。
【００７３】
第一状態更新手段（センサ関連状態更新手段）２３は、観測信号入力手段２１で入力された観測値に基づいて、第一状態抽出手段２２で抽出された状態種別の状態値を更新するものである。この第一状態更新手段２３で更新された状態値は、第一状態書込手段２４に出力される。
【００７４】
ここで、図５を参照（適宜図３参照）して、第一状態更新手段２３の構成について詳細に説明する。図５は、本発明の実施形態に係るノード装置の第一状態更新手段の構成例を示すブロック図である。図５に示すように、第一状態更新手段２３は、パターン記憶手段２３１と、パターン認識手段２３２と、状態変更手段２３３とを備える。
【００７５】
パターン記憶手段２３１は、観測信号入力手段２１で入力された観測値と、パターン認識を行うためのパターンデータを記憶しておくものであって、ハードディスク、半導体メモリ等の一般的な記憶装置である。
【００７６】
例えば、ノード装置１が人物の顔を検出する機能を有するものである場合、パターン記憶手段２３１には、予め人物固有の特徴となるパターンデータを人物の識別子とともに記憶しておく。このパターンデータは、画像信号における人物固有の画素パターン（空間的分布や空間周波数パターン）を用いることができる。
【００７７】
なお、パターン記憶手段２３１は、ノード装置１の機能に応じて種々のパターンデータを記憶しておくことができる。例えば、ノード装置１が特定物体や特定人物を追跡する機能を有する場合、パターン記憶手段２３１には、追跡対象物体（人物）の色、輝度、テクスチャ、動き、形状等に関する情報をパターンデータとして記憶しておく。
【００７８】
ここで、色に関する情報としては、例えば、追跡対象物体に含まれる各色の頻度を表す色ヒストグラムや平均色を用いることができる。また、テクスチャに関する情報としては、例えば、追跡対象物体の画像の２次元的な輝度や色の分布をテンプレート化したものや、当該輝度や色の分布を線形または非線形に変換した値を用いることができる。この変換には、フーリエ変換や離散コサイン変換等が挙げられる。
【００７９】
また、動きに関する情報としては、例えば、追跡対象物体の画像の２次元的な輝度や色の分布の平均的な動きベクトル、あるいは画像内の部分的な動きベクトルの集合を用いることができる。また、形状に関する情報としては、例えば、追跡対象物体の画像内の２次元的広がり（例えば、高さ、幅等）や、輪郭線の曲がり具合を定量化したフーリエ記述子やアスペクト比、円形度、図形の位相構造を定量化したオイラー数等を用いることができる。
【００８０】
さらに、ノード装置１が音声により話者を特定する機能を有する場合であれば、パターン記憶手段２３１には、予め人物固有の音声特徴（音声パターン）を人物の識別子とともに記憶しておく。この音声特徴には、例えば、音声信号におけるメルケプストラム、スペクトル包短、基本周波数、フォルマント周波数、あるいは、それらの統計的な分布情報を用いることができる。
【００８１】
パターン認識手段２３２は、観測信号入力手段２１で入力された観測値から、パターン記憶手段２３１に予め記憶されているパターンデータに基づいて、観測対象の状態を認識するものである。例えば、観測信号入力手段２１から映像信号の画素値列を入力された場合、パターン認識手段２３２は、入力された画素分布（画素値列の空間的分布）と、パターン記憶手段２３１に記憶されている人物固有の画素パターン（空間パターンや空間周波数パターン）とを比較することで、人物を特定の人物として認識したり、人物の位置を検出したりする。
【００８２】
そして、パターン認識手段２３２は、検出した人物固有の識別子を状態変更手段２３３に出力する。このとき、パターン認識手段２３２は、検出した人物の識別子を１つ出力することとしてもよいし、複数の候補となる人物の識別子群を出力することとしてもよい。さらに、パターン認識手段２３２は、識別子とともに、画像特徴や認識結果の信頼度を出力することとしてもよい。この信頼度には、例えば、特徴量の類似の度合いを用いることができる。
【００８３】
なお、ここでは、パターン認識手段２３２を画素パターンによって人物を検出するものとして説明したが、ノード装置１の機能に応じて種々の認識を行うものとして機能させることができる。例えば、パターン認識手段２３２を、入力される映像信号から、パターン記憶手段２３１に記憶されている物体（人物）の色、輝度、テクスチャ、動き、形状等に関する情報に基づいて物体（あるいはその物体の位置）を認識するものとして機能させることとしてもよい。また、例えば、パターン認識手段２３２を、入力される音声信号から、パターン記憶手段２３１に記憶されている音声特徴（音声パターン）基づいて話者を認識するものとして機能させることとしてもよい。
【００８４】
状態変更手段２３３は、パターン認識手段２３２から入力される入力信号（状態値）に基づいて、第一状態抽出手段２２から入力される状態群のうちの一部または全部の状態値を変更するものである。なお、この変更された状態群は、第一状態書込手段２４に出力される。
【００８５】
例えば、パターン認識手段２３２が画像特徴や音声特徴によって観測対象の識別子を認識するものである場合、状態変更手段２３３は、第一状態抽出手段２２から入力される入力状態群のうちで、識別子に関する情報のみを書き換えて第一状態書込手段２４に出力する。また、例えば、パターン認識手段２３２が観測対象の位置を検出するものである場合、状態変更手段２３３は、第一状態抽出手段２２から入力される入力状態群のうちで、位置に関する情報のみを書き換えて第一状態書込手段２４に出力する。
【００８６】
なお、状態変更手段２３３は、第一状態抽出手段２２から入力される入力状態群を書き換える場合、上書きにより状態値を変更することとしてもよいし、元の状態値と新しい状態値との平均値で変更することとしてもよい。
図３に戻って、ノード装置１の構成の説明を続ける。
【００８７】
第一状態書込手段（センサ関連状態書込手段）２４は、第一状態更新手段２３で更新された状態種別の状態値を状態記憶手段１０に書き込むものである。なお、第一状態書込手段２４は、状態記憶手段１０にすでに同一の状態種別が記憶されている場合、上書きによって状態値を書き換えるものとする。また、第一状態書込手段２４は、同一の状態種別が記憶されていない場合、新たに状態種別を追加して状態値を書き込むこととする。
【００８８】
例えば、状態種別Ａの状態値ａ、状態種別Ｂの状態値ｂが状態記憶手段１０に記憶されている状態で、第一状態書込手段２４に状態種別Ａの状態値ａ′と状態種別Ｃの状態値ｃが入力された場合、第一状態書込手段２４は、状態種別Ａの状態値をａからａ′に書き換え、状態種別Ｂの状態値をｂをそのまま保持し、新たに状態種別Ｃの状態値ｃを追加して状態記憶手段１０に書き込む。これによって、状態記憶手段１０には、状態種別Ａ，ＢおよびＣが存在するようになり、それぞれの状態値がａ′、ｂおよびｃとして記憶されることになる。
以上のように観測手段２０を構成することで、外部から入力される観測信号に基づいて、順次、状態記憶手段１０に記憶されている観測対象の状態が更新されることになる。
【００８９】
状態受信手段３０は、通信路２を介して、他ノード装置から送信される状態群をメッセージとして受信し、状態記憶手段１０に記憶されている状態を更新するものである。ここでは、状態受信手段３０は、メッセージ受信手段３１と、第二状態抽出手段３２と、第二状態更新手段３３と、第二状態書込手段３４とを備える。
【００９０】
メッセージ受信手段３１は、通信路２を介して、他ノード装置から送信される状態群のすべてまたは一部を、通信路２を介してメッセージとして受信するものである。このメッセージ受信手段３１で受信された状態（状態群）は、第二状態更新手段３３に出力される。なお、メッセージ受信手段３１は、状態群を受信するノード装置を限定せずに、すべてのノード装置から受信することとしてもよいし、特定のノード装置、あるいは、不特定のノード装置から受信することとしてもよい。
【００９１】
特定のノード装置から状態群を受信する場合、メッセージ受信手段３１は、物理的もしくは論理的な位置に近接する位置に配置されているノード装置を予め設定しておくことで、当該ノード装置からのみ状態群を受信することができる。また、不特定のノード装置から状態群を受信する場合、メッセージ受信手段３１は、ある時間間隔で乱数を発生させることで、その乱数に応じて受信対象となるノード装置から状態群を受信することができる。なお、特定あるいは不特定のノード装置の数は、１つであっても複数であってもよいし、その数を時刻とともに変化させることとしてもよい。
【００９２】
また、メッセージ受信手段３１は、複数の他のノード装置から送信されるメッセージから、自ノード装置へのメッセージのみを抽出して受信することとしてもよい。この場合、メッセージ受信手段３１は、例えば、メッセージ内に記述された宛先のノード名に基づいて、自ノード装置宛のメッセージを判定して受信することができる。なお、受信対象となるノード装置からのメッセージを判定するには、ノード名のみならず、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスやポート番号、あるいは、周波数分割多重（ＦＤＭ）における受信周波数、時分割多重（ＴＤＭ）における受信タイミング、符号分割多重（ＣＤＭ）における符号系列等の受信チャンネルや受信スロットによって特定することとしてもよい。
【００９３】
また、メッセージ受信手段３１が用いる通信プロトコルやメッセージのフォーマットは任意である。例えば、通信路２がイーサネット（登録商標）の場合、通信プロトコルとして、ＴＣＰ／ＩＰやＵＤＰ／ＩＰを用いることができる。また、通信路２が無線通信路である場合、任意の伝送路符号化、変調方式、周波数を用いることができる。
【００９４】
また、メッセージのフォーマットとしては、例えば、ＳＧＭＬ、ＸＭＬ等のマークアップ言語によるテキストデータや、当該データを情報源符号化（圧縮）したデータ、あるいは、木構造、リスト構造、入れ子構造で記述したバイナリデータや、当該データを情報源符号化したデータ等、任意のフォーマットを用いることができる。
【００９５】
ここで、図６〜図８を参照して、メッセージのフォーマットの具体例について説明する。図６および図７は、ＸＭＬフォーマットにより状態種別と状態値とを階層構造で表した記述例である。なお、図６は、状態種別を構成する要素および属性をＸＭＬの要素として記述した例である。図７は、状態種別を構成する要素と属性とをそれぞれＸＭＬの要素と属性として記述した例である。また、図８は、図６および図７のＸＭＬフォーマットで記述したメッセージの元となる状態群を模式化した階層構造で表した模式図である。以下、図６のＸＭＬフォーマットで記述されたメッセージを例として、ノード装置間で送受信されるメッセージの内容について具体的に説明する。
【００９６】
図６の＜ＭＥＳＳＡＧＥ＞タグ内にメッセージのデータが種々記述される。ここでは、＜ＭＥＳＳＡＧＥ＞タグ内に＜ＳＵＢＪＥＣＴ＞、＜ＯＢＪＥＣＴ＞、＜ＣＯＮＴＲＯＬ＞の各タグを記述した例を示している。
＜ＳＵＢＪＥＣＴ＞タグ内には、自ノード装置に関する情報が記述される。ここでは、＜ＳＵＢＪＥＣＴ＞タグ内に、自ノード装置のノード名（ｎａｍｅ）が“ＡＧＥＮＴ＿１”であり、ノード種別が“ＴＲＡＣＫＥＲ”であることが記述されている。さらに、自ノード装置には、レンズ＜ＬＥＮＳ＞が制御対象として存在し、その状態として、絞り（ｉｒｉｓ）が“１１”、ズーム〔焦点距離〕（ｚｏｏｍ）が“２４”（２４ｍｍ）、焦点位置〔フォーカス、ピント〕（ｆｏｃｕｓ）が“１２”（１２ｍ）であることが記述されている。
【００９７】
＜ＯＢＪＥＣＴ＞タグ内には、観測対象に関する情報が記述される。ここでは、＜ＯＢＪＥＣＴ＞タグ内に＜ＩＤ＞、＜ＰＯＳＩＴＩＯＮ＞、＜ＣＯＬＯＲ＞の各タグを記述した例を示している。＜ＩＤ＞タグによって観測対象の識別子（推定識別子）が記述され、＜ＰＯＳＩＴＩＯＮ＞タグによって観測対象の位置（推定位置）が記述され、＜ＣＯＬＯＲ＞タグによって観測対象の色情報が記述される。
【００９８】
さらに、ここでは、推定識別子＜ＩＤ＞および推定位置＜ＰＯＳＩＴＩＯＮ＞に関しては、２つの仮説＜ＨＹＰＯＴＨＥＳＩＳ＞が存在し、色＜ＣＯＬＯＲ＞に関しては、１つの仮説＜ＨＹＰＯＴＨＥＳＩＳ＞が存在することが記述されている。また、各仮説＜ＨＹＰＯＴＨＥＳＩＳ＞には、仮説の信頼度（ｉｍｐｏｒｔａｎｃｅ）、仮説の値（ｖａｌｕｅ）、仮説が生成された時刻（ｔｉｍｅｓｔａｍｐ）が記述されている。
【００９９】
＜ＣＯＮＴＲＯＬ＞タグ内には、制御対象の制御目標値が記述される。ここでは、制御対象はノード種別（ｔｙｐｅ）が“ＴＲＡＣＫＥＲ”である全ノード＜ＮＯＤＥ＞であることを示し、その＜ＮＯＤＥ＞群における各レンズ＜ＬＥＮＳ＞の制御目標値が、絞り（ｉｒｉｓ）が“５．６”（Ｆ５．６）、ズーム〔焦点距離〕（ｚｏｏｍ）が“２８”（２８ｍｍ）、焦点位置〔フォーカス、ピント〕（ｆｏｃｕｓ）が “ｉｎｆｉｎｉｔｙ”（無限遠）であることを示している。
図３に戻って、ノード装置１の構成について説明を続ける。
【０１００】
第二状態抽出手段（ノード間状態更新用状態抽出手段）３２は、状態記憶手段１０から、予め定めた状態種別の状態値を選択的に読み出すものである。この第二状態抽出手段３２で抽出された状態群（状態種別の状態値の集合）は、第二状態更新手段３３に出力される。この第二状態抽出手段３２は、出力先が第二状態更新手段３３であることを除いては、第一状態抽出手段２２と同一の機能を有するため、ここでは詳細な説明を省略する。
【０１０１】
第二状態更新手段（ノード間状態更新手段）３３は、メッセージ受信手段３１で受信された状態群に基づいて、第二状態抽出手段３２で抽出された状態種別の状態値を更新するものである。この第二状態更新手段３３で更新された状態値は、第二状態書込手段３４に出力される。
【０１０２】
例えば、第二状態更新手段３３は、メッセージ受信手段３１で受信された状態群の状態種別と、第二状態抽出手段３２で抽出された状態種別とを比較し、一致する状態種別について状態値を更新する。なお、第二状態更新手段３３は、メッセージ受信手段３１で受信された状態値を上書きによって更新することとしてもよいし、元の状態値と新しい状態値と間で演算を行い、その演算結果を用いて状態値を変更することとしてもよい。例えば、第二状態更新手段３３は、元の状態値と新しい状態値とを予め定めた一定比率で案分することで、新しい状態値を演算することができる。
【０１０３】
また、第二状態更新手段３３は、第二状態抽出手段３２で抽出された状態種別の状態値と、当該状態種別に対応するメッセージ受信手段３１で受信された状態値との両者をともに残すこととしてもよい。このように、同一の状態種別について複数の状態値を存在させる場合、それぞれの状態値に図４に示したように信頼度を付与しておくこととしてもよい。この場合、例えば、メッセージ受信手段３１で受信された状態値ｄの信頼度がα、第二状態抽出手段３２で抽出された状態値ｅの信頼度がβのとき、第二状態更新手段３３は、予め定めた“０”以上“１”以下の定数γにより、出力する２つの状態値を［状態値ｄ，信頼度γα］および［状態値ｅ，信頼度（１−γ）β］とする。
【０１０４】
また、第二状態更新手段３３は、状態記憶手段１０に記憶されている時系列の状態値に基づいて、現在または未来の状態値を算出することとしてもよい。例えば、ある時刻ｔにおいて、時刻“ｔ−２”における人物位置が“ｐ（ｔ−２）”、時刻“ｔ−１”における人物位置が“ｐ（ｔ−１）”として状態記憶手段１０に記憶されていた場合、第二状態更新手段３３は、現時刻ｔにおける人物位置“ｐ（ｔ）”を推定する。例えば、第二状態更新手段３３は、人物の運動を等速直線運動モデルとして、以下の（２）式により、人物位置“ｐ（ｔ）”を推定する。
ｐ（ｔ）＝２ｐ（ｔ−１）−ｐ（ｔ−２）      …（２）式
【０１０５】
第二状態書込手段（ノード間状態書込手段）３４は、第二状態更新手段３３で更新された状態種別の状態値を状態記憶手段１０に書き込むものである。この第二状態書込手段３４は、入力元が第二状態更新手段３３であることを除いては、第一状態書込手段２４と同一の機能を有するため、ここでは詳細な説明を省略する。
【０１０６】
以上のように状態受信手段３０を構成することで、通信路２を介して受信されるメッセージに基づいて、順次、状態記憶手段１０に記憶されている観測対象の状態が更新されることになる。
【０１０７】
状態送信手段４０は、通信路２を介して、状態記憶手段１０に記憶されている状態群を、他ノード装置にメッセージとして送信するものである。ここでは、状態送信手段４０は、第三状態抽出手段４１と、メッセージ生成手段４２と、メッセージ送信手段４３とを備える。
【０１０８】
第三状態抽出手段４１は、状態記憶手段１０から、予め定めた状態種別の状態値を選択的に読み出すものである。この第三状態抽出手段４１は、出力先がメッセージ生成手段４２であることを除いては、第一状態抽出手段２２と同一の機能を有するため、ここでは詳細な説明を省略する。
【０１０９】
メッセージ生成手段４２は、第三状態抽出手段４１で抽出された状態群（状態値）から、他のノード装置に送信するためのメッセージを生成するものである。このメッセージ生成手段４２で生成されたメッセージは、メッセージ送信手段４３に出力される。なお、メッセージ生成手段４２が生成するメッセージのフォーマットは、メッセージ受信手段３１で用いたものと同一のものであるため、説明を省略する。
【０１１０】
メッセージ送信手段４３は、メッセージ生成手段４２で生成されたメッセージを、通信路２を介して、他ノード装置に送信するものである。このメッセージ送信手段４３が用いる通信プロトコルは、メッセージ受信手段３１で用いたものと同一のものであるため、説明を省略する。
【０１１１】
なお、メッセージ送信手段４３は、状態群を送信するノード装置を限定せずに、すべてのノード装置に送信することとしてもよいし、特定のノード装置、あるいは、不特定のノード装置に送信することとしてもよい。
【０１１２】
例えば、特定のノード装置に状態群を送信する場合、メッセージ送信手段４３は、物理的もしくは論理的な位置に近接する位置に配置されているノード装置を予め設定しておくことで当該ノード装置のみに状態群を送信することができる。また、不特定のノード装置に状態群を送信する場合、メッセージ送信手段４３は、ある時間間隔で乱数を発生させることで、その乱数に応じて送信対象となるノード装置に状態群を送信することができる。この特定あるいは不特定のノード装置の数は、１つであっても複数であってもよく、その数を時刻とともに変化させることとしてもよい。
【０１１３】
また、送信先のノード装置を指定するには、例えば、メッセージ内の宛先に送信先のノード装置のノード名を列記することとしてもよいし、送信先のＩＰアドレスやポート番号、あるいは、周波数分割多重における受信周波数、時分割多重における受信タイミング、符号分割多重における符号系列等の受信チャンネルや受信スロットによって指定することとしてもよい。
【０１１４】
また、メッセージ送信手段４３は、ノード装置間の物理的距離や論理的距離、ノード装置の能力や負荷、通信路２の帯域、通信遅延、通信経路の故障等のいずれか１以上の状況に応じて、メッセージを送信する宛先や、メッセージの容量を変化させることとしてもよい。
【０１１５】
なお、ノード装置間の物理的距離としては、予め状態記憶手段１０に各ノード装置の属性として物理位置（例えば、緯度・経度等）を記憶しておき、その距離を用いることができる。また、ノード装置間の論理的距離としては、各ノード装置のネットワークアドレスの差分等を用いることができる。また、ノード装置の能力や負荷は、ノード装置間で適宜その状態を交換し、状態記憶手段１０に記憶しておくことで認識することができる。また、通信路２の帯域は、予め状態記憶手段１０に記憶しておくことで認識することができる。また、通信路２の通信遅延、通信経路の故障等は、メッセージ送信手段４３が、送信先からの応答によって適宜検出し、状態記憶手段１０に記憶しておくことで認識することができる。
【０１１６】
例えば、ノード装置間の物理的距離や論理的距離でメッセージの容量を変化させる場合、ある状態種別の状態値が複数（Ｍ個）の仮説を有する場合、メッセージ送信手段４３は、距離ｄに応じて、全Ｍ個の仮説の中からＭ′個（ただし、Ｍ′は０≦Ｍ′≦Ｍなる整数）を選択する。なお、通信路２の負荷分散上、距離ｄが大きくなるほど、選択するＭ′個の個数を減少させることが望ましい。また、距離ｄが予め定めた距離よりも大きい場合は、メッセージを送信しないようにすることとしてもよい。
【０１１７】
また、例えば、ノード装置（自ノード装置または他ノード装置）の能力や負荷で、メッセージを送信する宛先やメッセージの容量を変化させる場合、能力値が予め定めた値よりも小さいとき、あるいは、負荷が予め定めた値よりも大きいときに、メッセージ送信手段４３は、メッセージの宛先数やメッセージの容量を少なくする。
【０１１８】
また、例えば、通信路２の帯域（全帯域あるいは利用可能な帯域）が予め定めた帯域よりも狭いとき、通信遅延が予め定めた時間よりも長いとき、あるいは、通信経路の故障が検出されたとき、メッセージ送信手段４３は、メッセージの宛先数やメッセージの容量を少なくしたり、一時的に停止したり等の制御を行う。
以上のように状態送信手段４０を構成することで、状態記憶手段１０に記憶されている観測対象の状態が、逐次、通信路２を介して他のノード装置に送信されることになる。
【０１１９】
制御手段５０は、状態記憶手段１０に記憶されている状態に基づいて、外部に接続された機器（制御装置４、出力装置６）に対する制御信号を生成して出力するものである。ここでは、制御手段５０は、第四状態抽出手段５１と、制御情報生成手段５２と、制御信号出力手段５３とを備える。
【０１２０】
第四状態抽出手段（制御関連状態抽出手段）５１は、状態記憶手段１０から、予め定めた状態種別の状態値を選択的に読み出すものである。この第四状態抽出手段５１は、出力先が制御情報生成手段５２であることを除いては、第一状態抽出手段２２と同一の機能を有するため、ここでは詳細な説明を省略する。
【０１２１】
制御情報生成手段５２は、第四状態抽出手段５１で抽出された状態値に基づいて、外部に接続された機器（制御装置４、出力装置６）に対する制御情報を生成するものである。この制御情報生成手段５２で生成された制御情報は、制御信号出力手段５３に出力される。
【０１２２】
例えば、外部に接続された機器が、制御装置４としてカメラの姿勢やレンズの焦点距離を制御するものである場合、制御情報生成手段５２は、第四状態抽出手段５１で抽出された観測対象物体の状態値（位置）と、自ノード装置の制御対象であるカメラ、レンズの状態値（位置、姿勢、焦点距離）とから、観測対象物体をカメラの視野内に収めるためのカメラの姿勢、レンズの焦点距離を算出し、これらを制御装置４の制御目標値とする制御情報を生成する。
【０１２３】
また、例えば、外部に接続された機器が、出力装置６としてマンマシンインタフェースであるモニタを制御するものである場合、制御情報生成手段５２は、第四状態抽出手段５１で抽出された観測対象物体の状態値（例えば、位置）を、文字列や図形に変換し、これらを空間的あるいは時間的な輝度や色のパターンとしてモニタ画面上に提示するための制御情報を生成する。
【０１２４】
なお、制御情報生成手段５２は、外部に接続する機器に応じて種々の制御情報を生成するものとすることができる。例えば、制御情報生成手段５２が生成する制御情報として、カメラ、マイク等のセンサ３を搭載する架台（雲台、三脚、ドリー等）の位置や姿勢を変化させるためのアクチュエータに対する制御情報、カメラ等の光学系における焦点位置、焦点距離、絞り、バックフォーカス、あおり機構、シフト機構、シャッタ、光学フィルタ、フローティング機構等を調整したり、切り替えたりするためのアクチュエータに対する制御情報とすることができる。
【０１２５】
また、例えば、モニタやスピーカに対する制御情報、観測対象に投光する場合の光強度、色、投光パターン（空間／時間）を制御する制御器に対する制御情報、観測対象に電磁波を照射する場合の強度、周波数（波長）、変調パターン（空間／時間）を制御する制御器に対する制御情報、観測対象に音波や振動を与える場合の強度、周波数（波長）、変調パターン（空間／時間）を制御する制御器に対する制御情報とすることができる。
【０１２６】
制御信号出力手段５３は、制御情報生成手段５２で生成された制御情報を、外部に接続された制御対象の機器（制御装置４、出力装置６）に制御信号として出力するものである。なお、制御信号出力手段５３が出力する制御信号のインタフェースおよびプロトコルは、制御対象機器のインタフェースおよびプロトコルと一致するものとする。
【０１２７】
例えば、インタフェースとしては、ＥＩＡ−２３２、ＥＩＡ−５７４等のＲＳ−２３２Ｃの規格、ＥＩＡ−４２２、ＥＩＡ−４８６等の規格、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＩｒＤＡ、セントロニクスパラレルインタフェース、イーサネット（登録商標；１０Ｂａｓｅ−５、１０Ｂａｓｅ−Ｔ、１００Ｂａｓｅ−ＴＸ、１０００Ｂａｓｅ−Ｔ等）、ＶＧＡ等の物理的インタフェースを用いることができる。
【０１２８】
そして、制御信号出力手段５３は、制御情報を、制御対象機器によって予め定められているプロトコル（通信速度、パリティビット等、ＴＣＰ／ＩＰ、ＵＤＰ／ＩＰ等）や、メッセージのフォーマットに応じた制御信号に変換し、物理インタフェースを介して制御対象機器に出力する。
【０１２９】
以上のように制御手段５０を構成することで、状態記憶手段１０に記憶されている観測対象の状態に応じて、制御対象の機器（制御装置４、出力装置６）を制御することが可能になる。
【０１３０】
以上、ノード装置１の構成について説明したが、ノード装置１は、必ずしも図３で説明した構成をすべて備える必要はない。すなわち、ノード装置１を、図１で説明した観測ノード１Ａ、制御ノード１Ｂ、状態推定ノード１Ｃとして機能させる場合、それぞれノード装置１から、観測手段２０、状態受信手段３０、状態送信手段４０、制御手段５０のいずれかを１つ以上を省略して構成することができる。
【０１３１】
例えば、観測ノード１Ａは、図９に示すように、ノード装置１から制御手段５０を省き、センサ３を接続して構成することができる。また、制御ノード１Ｂは、図１０に示すように、ノード装置１から状態送信手段４０を省き、制御対象機器である制御装置４を接続して構成することができる。また、状態推定ノード１Ｃは、図１１に示すように、ノード装置１から観測手段２０と、制御手段５０とを省いて構成することができる。また、ノード装置１にキーボード等の入力装置５、モニタ等の出力装置６を接続することで、図１２に示すようにインタフェースノード１Ｄとして構成することもできる。
【０１３２】
さらに、ノード装置１は、観測手段２０、状態受信手段３０、状態送信手段４０、制御手段５０のいずれかを複数備えて、図１で説明した複合ノード１Ｅを構成することができる。例えば、図１３に示すように、ノード装置１の観測手段２０、状態受信手段３０、状態送信手段４０、制御手段５０をそれぞれ１つ以上、状態記憶手段１０と接続することで、複合ノード１Ｅを構成する。これによって、１つの複合ノード１Ｅで複数の観測対象を観測することができ、さらに、複数の制御対象を制御することができる。
【０１３３】
また、ノード装置１は、図示を省略したＣＰＵやメモリを搭載した一般的なコンピュータで実現することができる。このとき、ノード装置１は、各ブロック（観測手段２０、状態受信手段３０、状態送信手段４０、制御手段５０）をモジュール化し、個々のブロックの機能を省いて構成することで、観測ノード１Ａ、制御ノード１Ｂ、状態推定ノード１Ｃ、インタフェースノード１Ｄを実現することができる。あるいは、同一機能のモジュールを複数備えることで、複合ノード１Ｅを実現することができる。
【０１３４】
［センサネットワークシステムの動作］
次に、図１４〜図１８を参照して、センサネットワークシステムの動作について説明する。ここでは、センサネットワークシステムの動作例として、センサネットワークシステムが、図２に示したゴルフコース監視システムＳＢであって、人物を観測対象とし、カメラの雲台を制御対象として機能する動作について説明する。なお、以下の説明では、観測ノード１Ａ、制御ノード１Ｂ、状態推定ノード１Ｃ、インタフェースノード１Ｄの順番に動作説明を行うが、各ノードは、メッセージ通信を行いながら並列で動作を行う。
【０１３５】
（観測ノードの動作）
まず、観測ノード１Ａの動作について、図１４を参照（構成については適宜図９、図５参照）して説明する。図１４は、観測ノードの動作を示すフローチャートである。ここでは、観測ノード１Ａは、カメラが撮影した映像信号によって、観測対象である人物の位置を観測する機能を有しているものとする。
【０１３６】
観測ノード１Ａは、観測手段２０の観測信号入力手段２１によって、カメラ（センサ３）から映像信号（観測値）を入力する（ステップＳ１１）。
そして、観測ノード１Ａは、第一状態抽出手段２２によって、状態記憶手段１０から、人物の位置や特徴（色等）に関する状態種別の状態値を抽出する（ステップＳ１２）。具体的には、状態記憶手段１０に、図４に示した状態が記憶されている場合、第一状態抽出手段２２は、人物の位置の情報であるＮＯＤＥ［１］→ＯＢＪＥＣＴ［ｉ］→ＰＯＳＩＴＩＯＮ［１］→ＨＹＰＯＴＨＥＳＩＳ［ｍ］以下の属性群（状態種別の状態値）と、人物の特徴（色等）の情報であるＮＯＤＥ［１］→ＯＢＪＥＣＴ［ｊ］→ＣＯＬＯＲ［１］→ＨＹＰＯＴＨＥＳＩＳ［ｎ］以下の属性群（状態種別の状態値）とを抽出する。
【０１３７】
そして、観測ノード１Ａは、第一状態更新手段２３によって、ステップＳ１１で入力された映像信号から人物の状態（位置、色等）を検出し、ステップＳ１２で抽出された状態値を更新する（ステップＳ１３）。具体的には、第一状態更新手段２３は、パターン認識手段２３２によって、ステップＳ１１で入力された映像信号の画素分布と、パターン記憶手段２３１に記憶されている人物固有の画素パターンとを比較することで、人物の状態（位置、色等）を検出する。そして、第一状態更新手段２３は、状態変更手段２３３によって、ステップＳ１２で抽出された状態値のうちで、人物の位置、色等に関連する状態値のみを更新する。
【０１３８】
さらに、観測ノード１Ａは、第一状態書込手段２４によって、ステップＳ１３で更新された状態種別の状態値を状態記憶手段１０に書き込む（ステップＳ１４）。その後、観測ノード１Ａは、第三状態抽出手段４１によって、状態記憶手段１０から、人物の位置や特徴（色等）に関する状態種別の状態値を読み出す（ステップＳ１５）。そして、観測ノード１Ａは、メッセージ生成手段４２によって、ステップＳ１５で読み出された状態値（状態群）からメッセージを生成し、メッセージ送信手段４３によって、メッセージを他ノード装置に送信する（ステップＳ１６）。
【０１３９】
以上の動作によって、観測ノード１Ａは、観測対象の状態の変化を他のノード装置に送信することができる。なお、ここでは、図示を省略しているが、観測ノード１Ａは、他のノード装置から、状態群をメッセージとして受信した場合、逐次、状態記憶手段１０を更新する。
【０１４０】
（制御ノードの動作）
次に、制御ノード１Ｂの動作について、図１５を参照（構成については適宜図１０参照）して説明する。図１５は、制御ノードの動作を示すフローチャートである。ここでは、制御ノード１Ｂは、パン、チルト等がアクチュエータによって操作が可能な雲台を制御する機能を有しているものとする。
【０１４１】
制御ノード１Ｂは、メッセージ受信手段３１によって、他のノード装置（例えば、観測ノード１Ａ）から、通信路２を介して、状態群をメッセージとして受信する（ステップＳ２１）。
【０１４２】
また、制御ノード１Ｂは、第二状態抽出手段３２によって、状態記憶手段１０から、人物の位置に関する状態種別の状態値を抽出する（ステップＳ２２）。その後、制御ノード１Ｂは、第二状態更新手段３３によって、ステップＳ２１で受信された状態群のうちの人物の位置に関する状態種別の状態値に基づいて、ステップＳ２２で抽出した状態値を更新し、第二状態書込手段３４によって、更新された状態値を状態記憶手段１０に書き込む（ステップＳ２３）。
【０１４３】
さらに、制御ノード１Ｂは、観測信号入力手段２１によって、雲台のパン角およびチルト角の計測結果（αＯ，δＯ）を観測値として入力する（ステップＳ２４）。また、制御ノード１Ｂは、第一状態抽出手段２２によって、状態記憶手段１０から、雲台の状態（パン角、チルト角）に関する状態種別の状態値を抽出する（ステップＳ２５）。
【０１４４】
そして、制御ノード１Ｂは、第一状態更新手段２３によって、ステップＳ２４で入力されたパン角およびチルト角の計測結果（αＯ，δＯ）に基づいて、ステップＳ２５で抽出した雲台の状態（パン角、チルト角）に関する状態種別の状態値を更新し、第一状態書込手段２４によって、更新された状態値を状態記憶手段１０に書き込む（ステップＳ２６）。
【０１４５】
その後、制御ノード１Ｂは、第四状態抽出手段５１によって、人物の位置、雲台の状態（パン角、チルト角）に関する状態種別の状態値を抽出する（ステップＳ２７）。そして、制御ノード１Ｂは、制御情報生成手段５２によって、ステップＳ２７で抽出された状態値に基づいて、雲台を制御するための制御情報を生成する（ステップＳ２８）。
【０１４６】
ここでは、制御情報生成手段５２は、雲台を制御するための制御情報として、パンおよびチルト方向の角速度制御値を生成することとする。具体的には、制御情報生成手段５２は、ステップＳ２７で抽出された人物の位置とパン角およびチルト角の計測結果（αＯ，δＯ）とに基づいて、カメラにより人物を中心に捉えるパン角およびチルト角の目標値（αＴ，δＴ）を算出する。なお、目標値（αＴ，δＴ）は、予め較正された雲台の設置位置・姿勢から、人物位置を見た場合の方位角と仰角とを座標変換することで求めることができる。そして、制御情報生成手段５２は、パン角およびチルト角の目標値（αＴ，δＴ）と、計測結果（αＯ，δＯ）とのずれ量に基づいて、パンおよびチルト方向の角速度制御値（ωα，ωδ）を求める。なお、角速度制御値（ωα，ωδ）は、ＰＩＤ（比例積分微分）制御則に基づいて算出することができる。
【０１４７】
そして、制御ノード１Ｂは、制御信号出力手段５３によって、ステップＳ２８で生成された制御情報を制御対象である雲台の制御信号に変換し出力する（ステップＳ２９）。例えば、制御信号出力手段５３は、雲台の制御が電圧値によるアナログ信号で行う必要がある場合、角速度制御値（ωα，ωδ）をデジタル／アナログ変換（Ｄ／Ａ変換）することにより制御信号に変換し、出力する。
以上の動作によって、制御ノード１Ｂは、観測対象や制御対象の状態に応じて、制御対象を制御することができる。
【０１４８】
（状態推定ノードの動作）
次に、状態推定ノード１Ｃの動作について、図１６を参照（適宜図１１参照）して説明する。図１６は、状態推定ノードの動作を示すフローチャートである。ここでは、状態推定ノード１Ｃは、観測対象の位置を推定（予測）する機能を有しているものとする。
【０１４９】
状態推定ノード１Ｃは、メッセージ受信手段３１によって、他のノード装置（例えば、観測ノード１Ａ）から、通信路２を介して、状態群をメッセージとして受信する（ステップＳ３１）。
【０１５０】
そして、状態推定ノード１Ｃは、第二状態抽出手段３２によって、状態記憶手段１０から、人物の位置に関する状態種別の状態値を抽出する（ステップＳ３２）。具体的には、状態記憶手段１０に、図４に示した状態が記憶されている場合、第二状態抽出手段３２は、人物の位置の情報であるＮＯＤＥ［１］→ＯＢＪＥＣＴ［ｉ］→ＰＯＳＩＴＩＯＮ［１］→ＨＹＰＯＴＨＥＳＩＳ［ｍ］以下の属性群（状態種別の状態値）を抽出する。
【０１５１】
その後、状態推定ノード１Ｃは、第二状態更新手段３３によって、ステップＳ３１で受信された状態群のうちの人物の位置に関する状態種別の状態値と、ステップＳ３２で抽出された状態値とに基づいて、人物の状態（ここでは位置の状態値）を推定する（ステップＳ３３）。そして、状態推定ノード１Ｃは、第二状態書込手段３４によって、ステップＳ３３で推定された状態値を、状態記憶手段１０に書き込む（ステップＳ３４）。
【０１５２】
そして、状態推定ノード１Ｃは、第三状態抽出手段４１によって、状態記憶手段１０から、人物の位置に関する状態種別の状態値を読み出す（ステップＳ３５）。そして、状態推定ノード１Ｃは、メッセージ生成手段４２によって、ステップＳ３５で読み出された状態値（状態群）からメッセージを生成し、メッセージ送信手段４３によって、通信路２を介して、他ノード装置にメッセージを送信する（ステップＳ３６）。
【０１５３】
具体的には、例えば、ある時刻ｔにおいて状態記憶手段１０に時刻“ｔ−２”における人物位置“ｐ（ｔ−２）”が記憶されていたとする。このとき、ステップＳ３１において、メッセージ受信手段３１が、時刻“ｔ−１”における人物位置“ｐ（ｔ−１）”を受信すると、ステップＳ３２において、第二状態抽出手段３２が、状態記憶手段１０から時刻“ｔ−２”における人物位置“ｐ（ｔ−２）”を抽出する。
【０１５４】
そして、ステップＳ３３において、第二状態更新手段３３が、人物位置“ｐ（ｔ−１）”と人物位置“ｐ（ｔ−２）”とに基づいて、現時刻ｔにおける人物位置“ｐ（ｔ）”を推定する。その後、時刻ｔにおける人物位置“ｐ（ｔ）”が状態値として状態記憶手段１０に追加登録され、さらに、他ノード装置にメッセージとして送信される。
以上の動作によって、状態推定ノード１Ｃは、観測対象の位置を推定（予測）して、他のノード装置に送信することができる。
【０１５５】
（インタフェースノードの動作）
次に、インタフェースノード１Ｄの動作について、図１７および図１８を参照して説明する。図１７は、インタフェースノードの入力系の動作を示すフローチャートである。図１８は、インタフェースノードの出力系の動作を示すフローチャートである。ここでは、インタフェースノード１Ｄは、ユーザインタフェースとしての機能を有しているものとする。
【０１５６】
まず、図１７を参照（構成については適宜図１２参照）して、インタフェースノード１Ｄが、ユーザからの指示により状態値を更新する入力系の動作について説明する。
インタフェースノード１Ｄは、ユーザからの指示により状態値を更新する場合、観測信号入力手段２１によって、入力装置５（マウス、ジョイスティック、キーボード、ダイアル等）を介してユーザが入力した任意の状態種別の状態値を観測値として入力する（ステップＳ４１）。
【０１５７】
そして、インタフェースノード１Ｄは、第一状態抽出手段２２によって、状態記憶手段１０から、少なくともステップＳ４１で入力された状態種別の状態値を抽出する（ステップＳ４２）。
【０１５８】
そして、インタフェースノード１Ｄは、第一状態更新手段２３によって、ステップＳ１４１で入力された状態値で、ステップＳ４２で抽出された状態値を更新する（ステップＳ４３）。さらに、インタフェースノード１Ｄは、第一状態書込手段２４によって、ステップＳ４３で更新された状態種別の状態値を状態記憶手段１０に書き込む（ステップＳ４４）。
【０１５９】
その後、インタフェースノード１Ｄは、第三状態抽出手段４１によって、状態記憶手段１０から状態値（状態群）を読み出す（ステップＳ４５）。そして、インタフェースノード１Ｄは、メッセージ生成手段４２によって、ステップＳ４５で読み出された状態値からメッセージを生成し、メッセージ送信手段４３によって、通信路２を介して、他ノード装置にメッセージを送信する（ステップＳ４６）。
以上の動作によって、インタフェースノード１Ｄは、特定の状態種別の状態値をユーザの指示により変更することが可能になる。
【０１６０】
次に、図１８を参照（構成については適宜図１２参照）して、インタフェースノード１Ｄが、ユーザに対して、観測対象等の状態を提示する出力系の動作について説明する。
【０１６１】
インタフェースノード１Ｄは、メッセージ受信手段３１によって、他のノード装置（例えば、観測ノード１Ａ）から、通信路２を介して、状態群をメッセージとして受信する（ステップＳ５１）。
そして、インタフェースノード１Ｄは、第二状態抽出手段３２によって、状態記憶手段１０から状態群を読み出し（ステップＳ５２）、第二状態更新手段３３によって、ステップＳ５１で入力された状態群の状態値で、ステップＳ５２で抽出された状態値を更新する（ステップＳ５３）。そして、インタフェースノード１Ｄは、第二状態書込手段３４によって、ステップＳ５３で更新された状態種別の状態値を状態記憶手段１０に書き込む（ステップＳ５４）。
【０１６２】
その後、インタフェースノード１Ｄは、第四状態抽出手段５１によって、状態記憶手段１０から、予め定めたユーザに提示する状態種別の状態値を抽出する（ステップＳ５５）。そして、インタフェースノード１Ｄは、制御情報生成手段５２によって、ステップＳ５５で抽出された状態値に基づいて、出力装置６に出力するための制御情報を生成する（ステップＳ５６）。例えば、出力装置６がディスプレイやプリンタである場合、制御情報生成手段５２は、状態値を文字コードに変換する。そして、インタフェースノード１Ｄは、制御信号出力手段５３によって、ステップＳ５６で生成された制御情報を出力装置６の制御信号に変換し出力する（ステップＳ５７）。
以上の動作によって、インタフェースノード１Ｄは、特定の状態種別の状態値をユーザの提示することが可能になる。
【０１６３】
以上説明したように、各ノード装置１は、それぞれ状態記憶手段１０に観測対象、制御対象の状態を保持し、その状態をメッセージ交換することで、各ノード装置１を固有の機能を有するノード装置に特化してシステムを構成することができる。
また、このように、センサネットワークシステムを構成することで、システム構成が大きくなる場合であっても、ノード装置１を通信路２に接続するだけで、機能を拡張することが可能になる。
【図面の簡単な説明】
【０１６４】
【図１】本発明の実施形態に係るセンサネットワークシステムの構成例を示す構成図である。
【図２】センサネットワークシステムの一例であるゴルフコース監視システムの構成を模式的に示す模式図である。
【図３】本発明の実施形態に係るノード装置の構成例を示すブロック図である。
【図４】本発明の実施形態に係るノード装置の状態記憶手段に記憶されるデータのデータ構造を示す模式図である。
【図５】本発明の実施形態に係るノード装置の第一状態更新手段の構成例を示すブロック図である。
【図６】状態種別を構成する要素および属性をＸＭＬの要素として記述した例である。
【図７】状態種別を構成する要素と属性とをそれぞれＸＭＬの要素と属性として記述した例である。
【図８】図６および図７のＸＭＬフォーマットで記述したメッセージの元となる状態群を模式化した階層構造で表した模式図である。
【図９】ノード装置の一形態である観測ノードの構成例を示すブロック図である。
【図１０】ノード装置の一形態である制御ノードの構成例を示すブロック図である。
【図１１】ノード装置の一形態である状態推定ノードの構成例を示すブロック図である。
【図１２】ノード装置の一形態であるインタフェースノードの構成例を示すブロック図である。
【図１３】ノード装置の一形態である複合ノードの構成例を示すブロック図である。
【図１４】観測ノードの操作を示すフローチャートである。
【図１５】制御ノードの動作を示すフローチャートである。
【図１６】状態推定ノードの動作を示すフローチャートである。
【図１７】インタフェースノードの入力系の動作を示すフローチャートである。
【図１８】インタフェースノードの出力系の動作を示すフローチャートである。
【符号の説明】
【０１６５】
Ｓ      センサネットワークシステム
ＳＢ     ゴルフコース監視システム
１      ノード装置
１０    状態記憶手段
２０    観測手段
２１    観測信号入力手段
２２    第一状態抽出手段（センサ関連状態抽出手段）
２３    第一状態更新手段（センサ関連状態更新手段）
２４    第一状態書込手段（センサ関連状態書込手段）
３０    状態受信手段
３１    メッセージ受信手段
３２    第二状態抽出手段（ノード間状態更新用状態抽出手段）
３３    第二状態更新手段（ノード間状態更新手段）
３４    第二状態書込手段（ノード間状態書込手段）
４０    状態送信手段
４１    第三状態抽出手段
４２    メッセージ生成手段
４３    メッセージ送信手段
５０    制御手段
５１    第四状態抽出手段（制御関連状態抽出手段）
５２    制御情報生成手段
５３    制御信号出力手段
【図１】
0005044459.tif 000003
【図２】
0005044459.tif 000004
【図３】
0005044459.tif 000005
【図４】
0005044459.tif 000006
【図５】
0005044459.tif 000007
【図６】
0005044459.tif 000008
【図７】
0005044459.tif 000009
【図８】
0005044459.tif 000010
【図９】
0005044459.tif 000011
【図１０】
0005044459.tif 000012
【図１１】
0005044459.tif 000013
【図１２】
0005044459.tif 000014
【図１３】
0005044459.tif 000015
【図１４】
0005044459.tif 000016
【図１５】
0005044459.tif 000017
【図１６】
0005044459.tif 000018
【図１７】
0005044459.tif 000019
【図１８】
0005044459.tif 000020