• 検索結果がありません。

ACAS のシステム構成

第 5 章 ACAS の設計と実装

5.2 ACAS のシステム構成

本節では、ACASのソフトウェア構成について述べる。図5.2にACASのシステム 構成図を載せた。ACASの核となるのは図中の「センサデータのファジィ化」と「ファ ジィ推論による解析」の部分である。各モジュールの詳しい説明に入る前に、まずは 物理空間に関する状況、「センサデータの受信」について述べる。

ACASのシステムを利用する上で、物理空間におけるセンサ毎の配置方法や、セン サの設置に合わせて必要なる情報はなく、センサノードや物理的な構成要素に対する 制限を受けない。センサノードやデバイスに依存した違いは、ACAS内部で抽象化さ れるため考慮する必要はなく、特定のセンサノードに依存した解析も行わないため、

状況に限定されず解析を行える。しかし、コンテキスト解析のルールを記述する上で は、あらかじめセンサデータとコンテキストの状態とを把握しておく必要がある。あ る数値データの特徴と、それに対応するコンテキストの状態を結びつけることは、エ キスパートシステムに代表される、人間の感覚によって状況判断をルールとして定義 するための前提となる。ただし、本当に正確な数値と状態の定義が求めれれるわけで はなく、おおよそのセンサデータの値とその状態とが分かればACASで解析すること ができる。以降では、各モジュールの役割をデータフロー順に説明する。

センサデータのファジィ化

「センサデータのファジィ化」の部分では、センサノードから受信したデータをファ ジィ推論による解析可能な形式であるファジィ集合に変換する。外部からセンサデー タ形式の定義ファイルを読み込むことで、後からセンサノードの追加も可能となる。

センサデータ受信モジュール アクチュエータ

ACAS API

センサデータ形式 の定義ファイル

ファジィ推論モジュール

DB

ファジィ集合化モジュール プロキシコントローラ

プロダクションルール の定義ファイル

ユーザによるコンテキ スト解析ツールの操作

センサデータのファジィ化 ファジィ推論による解析

データ形式統⼀

モジュール

クエリ発⾏モジュール

センサデータ

センサデータ センサデータ

[凡例]

データの流れ ファイルの読み込み 実⾏命令

図 5.2: ACASのシステム構成図

センサデータ受信モジュール

センサノードの種類ごとに、それぞれセンサデータを受信するための TCP port を用意する。後からセンサノードが追加されることも考慮に入れて設計を行う。

通常、センサデータはデータベースに保存されるが、生データによるコンテキス ト解析を行う場合にはそのままデータ形式統一モジュールにデータが渡される。

データ形式統一モジュール

センサデータは各センサデバイスごとに取得可能な値に差がある。光センサの 値として 0から 255でデータを取得できるものもあれば、0 から65535 を数値 として返すもの、負の値を取るものもある。このようなセンサデバイスごとの差 を、このモジュールにて正規化する。

クエリ発行モジュール

ユーザが直接入力を行うのは ACAS API に対してだけである。このモジュール

では ACAS API からの要求を受けたら、データベースにデータを要求するため

のクエリを作成し、データの受け渡しを行う。そして得られたセンサデータを データ形式統一モジュールに送る。

ファジィ集合化モジュール

センサデータ形式統一モジュールを経て、正規化されたセンサデータをこのモ ジュールにてファジィ集合に変換する。この線形グラフはシステムの演算効率を 考え、曲線ではなく直線を複数組み合わせたもので表現する。

ファジィ推論による解析

ファジィ集合化されたセンサデータに対して、ファジィ推論によって解析を行いコ ンテキストを得る。推論を行うためのプロダクションルールは、外部の定義ファイル を読み込むことで入力する。ルールの記述は自然言語による定義となる。

ファジィ推論モジュール

ファジィ推論モジュールでは、プロダクションルールに従ってファジィ集合化さ れたセンサデータからコンテキストを求める。その際、コンテキストの重み付け や重心の求め方などには、ファジィ理論の応用としていくつかの手法があるが、

ACASにおいては第4章で説明した Min-Max重心法を用いた。また、抽象コン テキストのように複数のコンテキストを合わせて、より高次のコンテキストを得 る場合などを考慮した設計にする。

アクチュエータでの動作

ファジィ推論による解析が行われた後、出力されたコンテキストとアクチュエータ の動作を関連付けする必要がある。そのための方法として ACAS APIを用意する。実 際にアクチュエータを操作するのは、API からプロキシコントローラを介する。

ACAS API

このAPIはACASでコンテキスト解析を行う上で、システム開発者がより効率 的にシステムを運用できるようにするための関数の集合体である。次に列挙した ものが API として提供するメソッドの一部である。

ファジィ推論への命令関数 / プロダクションルールの定義関数 コンテキスト解析結果取得関数 / データベースへの要求関数

これらの関数を利用することで、システム開発者は ACAS を利用したシステム の開発が可能となる。

関連したドキュメント