ファジィ集合論

出典: フリー百科事典『ウィキペディア(Wikipedia)』

ファジィ から転送)

ファジィ集合論(ファジィしゅうごうろん、Fuzzy set)は、複雑なシステムを「曖昧」にとらえることで最適に制御するアルゴリズムおよび理論。

1965年にロトフィ・ザデーによって提唱された、境界がはっきりしない集合(ファジィ集合)に帰属する度合をメンバシップ関数として表すことで曖昧な主観を表現することができる。多くの変数からなる複雑な系を扱うのに有効である。

目次

[編集] ファジィ集合

ファジィ理論はファジィ集合と呼ばれる集合とその度合いを表すメンバシップ関数によって構成される。例えばある年齢の人間を「若者」「中年」「老人」という3種類の集合にわけることを考える。このときどこまでの年齢を若者とするか老人とするかは人によって意見の分かれる部分である。ファジィではこのような曖昧な事象を定量化することで数学の集合論的な解釈を可能にする。例えば若者に属する集合を A、中年に属する集合を B、老人に属する集合を Cとすると「35歳の人間」 x は

μA(x) = 0.2
μB(x) = 0.7
μC(x) = 0.1

という風に表す、ここでは35歳の人間は0.7の割合で中年に属し0.2の割合で若者に属し0.1の割合で老人に属すると置いている(実際に正しいかどうかは別、あくまでこのように定義するという指標)。このとき μA(x) + μB(x) + μC(x) = 1 である。(ただし、各概念がこのようにきちんと分割できなければいけないというわけではない。)このように「どこまで属する」という事柄を割合として表すことのできる集合 A,B,Cファジィ集合といい、具体的な割合の数値をだす各μA(x),μB(x),μC(x)メンバシップ関数という。なおファジィ理論では通常の集合はファジィ集合と区別するため非ファジィ集合、あるいはクリスプ集合と呼ぶ。

[編集] ファジィ集合の基本演算

ファジィ理論は集合論の拡張として考案されている。このため集合論の各基本演算に対応するファジィ理論の基本演算がそれぞれ定義されている(以下特殊文字を含む箇所があるので環境によっては出力されない部分がある)。

ファジィ理論では特にメンバシップ関数の大小が大きく影響するので、

a\wedge b \to \min(a,b)
a\vee b \to \max(a,b)

とあらかじめ定義される。このときファジィ集合を A,Bと各メンバシップ関数を μA(x),μB(x) とおくと各演算は

和集合 
A\cup B \leftrightarrow\mu_{A\cup B}(x)= \mu_A(x)\vee\mu_B(x)
共通集合 
A\cap B\leftrightarrow\mu_{A\cap B}(x) = \mu_A(x)\wedge\mu_B(x)
補集合 
\overline{A} \leftrightarrow\mu_{\overline{A}}(x) = 1 - \mu_A(x)

となるメンバシップ関数をもつ集合と定義される。また対等関係、包含関係は以下のように表す。

対等関係 
A=B \leftrightarrow \mu_A(x) = \mu_B(x), \forall x\in X
包含関係 
A \subseteq B \leftrightarrow \mu_A(x) \leq \mu_B(x), \forall x\in X

ここで X は全体集合のことである。これらの定義からファジィ集合には以下の定理が成り立つことが証明されている。

二重否定 
\overline{\overline{A}} = A
ド・モルガンの法則
\overline{A\cup B} = \overline{A}\cap\overline{B}
\overline{A\cap B} = \overline{A}\cup\overline{B}

また、ファジィ集合独自の演算として以下のようなものが定義されている。

代数和 
A + B \leftrightarrow \mu_{A+B}(x) = \mu_A(x) + \mu_B(x) - \mu_A(x)\cdot\mu_B(x)(演算子 + は ⊞(特殊文字 + を□で囲んだ形)や\dot+とする場合もある)
代数積 
A \cdot B \leftrightarrow \mu_{A\cdot B}(x) = \mu_A(x)\cdot\mu_B(x)
限界和 
A \oplus B \leftrightarrow \mu_{A\oplus B}(x) = \left(\mu_A(x) + \mu_B(x)\right)\wedge 1
限界差 
A - B \leftrightarrow \mu_{A - B}(x) = \left(\mu_A(x) - \mu_B(x)\right)\vee 0、演算子は正確には - ではなく-を○で囲んだ⊖(特殊文字)。
限界積 
A \otimes B \leftrightarrow \mu_{A\otimes B} =  \left(\mu_A(x) + \mu_B(x) - 1 \right)\vee 0、演算子は⊙(特殊文字・を○で囲んだ形)とする場合もある。
激烈和 
 A\dot\vee B \leftrightarrow \mu_{A\dot\vee B}(x)=\left\{\begin{matrix}
\mu_A(x), & \mbox{if }\mu_B(x) = 0 \\ \mu_B(x), & \mbox{if }\mu_A(x) = 0 \\ 1, & \mbox{else}\end{matrix}\right.
激烈積 
 A\dot\wedge B \leftrightarrow \mu_{A\dot\wedge B}(x)=\left\{\begin{matrix}
\mu_A(x), & \mbox{if }\mu_B(x) = 1 \\ \mu_B(x), & \mbox{if }\mu_A(x) = 1 \\ 0, & \mbox{else}\end{matrix}\right.

[編集] 関連項目

[編集] 外部リンク