ファジーおよびファジーについての簡単な説明

ここではファジーおよびファジー推論について簡単な説明を行います


ファジー推論の基礎

ファジーの概念は 1965 年アメリカの L.A.Zadeh により``Fuzzy Set''(ファジー集合)の中で提唱された[1,2]. 数学的に「集合」とはある要素がその集合に属するか属さないかが厳密に決められるものであるが,これに対してファジーの概念による集合(ファジー集合)は,ある要素がその集合に属する度合いを数値的に与えるものであり,概念的に曖昧さを持つように定義される.

推論とは一般的に既知の知識や情報を使って,何らかの別な情報を抽出又は導く課程をいい,厳密な知識から論理的に明確に結論が導き出されるものから適当に大ざっぱな定性的知識からあいまいさを含んだ結論を導くものまで考えられる[3]. ファジー推論(Fuzzy Inference)とはファジー集合の持つ曖昧さを基に,推論のアルゴリズムをモデル化したものであり[4],いくつかのファジー命題(ルール)から演繹的にある1つの別なファジー命題を解くことを基本とする.
図1はファジー推論のアルゴリズムを持つ制御システムを図示したものである[5].

[Fuzzy system]
図1 Fuzzy system

この制御システムにおける制御ノウハウの表現方法の一つがファジー推論によるルールであり,if-then を用いて記述することで,命題を言語的に扱うことが出来る[2,6].
ファジー推論の手法は表1で示すように大きく直接法と間接法の2つに分けることができ,一般的には mamdani が提案した簡便で且つ比較的良好な推論結果を導くことが出来る直接法(max-min 法)にて解を求めることが多い[6,7].

[表1]

ファジー推論の直接法の手続きを簡潔にまとめると以下の様になる.


ルールの記述

if-then を用いて記述するファジールールは以下の様に示される.

[式1] (1)

ここで if で与えられる " x1 is A1n ・・・xm is Amn" の部分が前件部,then で与えられる "y is Bn" の部分が後件部である. また "Amn , Bn" はそれぞれ前件部,後件部におけるファジー集合である.


メンバーシップ関数による度合いの表現

ファジー集合は図2(a)に示すように0から1までの区間の実数値を関連づける非線形関数により特徴づけられ,この関数のことをメンバーシップ関数と呼ぶ[1,2]. メンバーシップ関数における度合い ui が 1 に近づくほど要素はファジー集合に属する度合いが高いことになり,0 に近づくほど属する度合いが低くなる.
このファジー集合に対し,その集合に属するか属さないかを決める集合をクリスプ集合 (CRISP set) といい,一般的に使われる集合である(図2(b)).

[図2
図2 Fuzzy 集合と Crisp 集合

ファジールールにおいて前件部に与える値によって各々のメンバーシップ関数から度合い ui が求められる. つまり図3に示すようなファジー集合$A_{i}$が存在するとき,入力xの値が$x_{1}$の場合,その度合いは $\mu_{1}$ になる. 同様にこのファジー集合$A_{i}$からは$x_{2}$の時 $\mu_{2}$ が,$x_{3}$の時 $\mu_{3}$ が各々の入力に対する度合いである.

[図3]
図3 メンバーシップ関数の度合い


入力に対する推論結果の算出

後件部のファジーの度合いは前件部によって求められた値から求める.Mbr> 例えば図4に示す様に前件部のファジー集合 A1 ,後件部のファジー集合 β1 を考えた場合,xi の入力が x4 であるときその前件部の値は u4 であり,後件部のファジー集合 yq における値は前件部の度合いが u4 であることから,メンバーシップ関数 β1 における u4 以下の斜線で示された部分となる.

[図4]
図4 メンバーシップ関数による結果

更に複数の前件部が存在するファジールールを考えた場合,それぞれのファジー集合から各々の前件部の値が与えられ,そしてこの各々のファジー集合をmin演算で結合する[1,6,7]. 具体的には図5の様に前件部に2つのファジー集合 A11,A12 があるとき,各々のファジー集合の結果を u5 及び u6 とする. この結合結果は min 演算を用いると u6 の値がこれらのファジー集合の度合いの結果として得られる.
後件部は図5で示すように前件部 A11,A12 で得られた値 u6 から後件部 β1 のメンバーシップ関数よりその割合 β1* が得られる.

[図5]
図5 複数のメンバーシップ関数による結果

同様に式(1)における各ファジールールの推論結果を各々求める場合には,各々のファジールールの推論結果の度合いを先ず求め,その後に複数の場合の度合いの結果をだす.
具体的に図5の様に,ルール1における推論結果を β1*, ルール2における推論結果が β2* と求められる. この求まった各推論結果 β1*,β2* を結合することで式(1)に対するファジー推論全体の結果(操作量)β0* を得る.


非ファジー化手続

複数の推論より求められた結果(操作量)はファジー集合の形のままであり,この結果をそのまま制御対象の操作量として入力することはできない. よってファジー集合の形である値を非ファジー化( Defuzzfication)手続を行い,制御対象の操作量として扱えるようにする. この非ファジー化手続として各ルールから求められた推論結果の重心座標を求める手法(重心法)がよく使われ,以下で定義される[8,9].

[式2] (2,3)

具体的には図5の様に求められた各々の推論結果 β1*,β2* から,重心座標 y0 が求まる.
この他にも非ファジー化の方法は面積法,最大値法等が提案されているが,推論結果にあまり大差はないことが知られている[9].


戻る