ファジィについて その1
理化工業ホーム > 技術解説ホームページ > ファジィについて その1
他のトピックスへ
RKC 理化工業のオンラインショップ 『Shop RKC』は、こちら
就活生の皆さんへ 理化工業の求人情報は、こちら
 RKC製品のREX−Dシリーズなどに搭載していますファジィ機能について紹介します。

 このファジィ機能の紹介として、
 ◆ファジィについての基礎的な説明
 ◆弊社のファジィ機能について
の2回に分けて紹介していく予定です。今回は、前者の「ファジィについての基礎的な説明」を行います。
 なお、この資料で書かれている内容は、ファジィについてのごく一部の基礎的な部分を簡単に説明していますので、興味を持たれた方は、ファジィの専門書の方をご覧ください。

ファジィについての基礎的な説明

○ファジィとは
 ファジィと言う言葉を聞くと、「あいまい」という意味が最初に思い浮かぶのではないかと思います。
この「あいまい」とは、どういうことかと言うと、例えば「暑い」であるとか「速い」など人間が主観的な感覚で使用するあいまいな表現のことです。

 ファジィを工業計器に取り入れていくためには、このようなあいまいな表現をどのように実現していくかが必要です。

○クリスプ集合とファジィ集合
 では、ファジィを実現するためにどのような考え方を使用するかと言うと、集合の考え方を使います。

 まず、私たちが日頃使用している数値的な表現として、「20℃」や「50 Km/h」などがあり、これらの表現は、一定の値に属するか属さないかだけで現されています。このような表現方法で現される集合をクリスプ集合といいます。

これに対して、ファジィは、ある範囲にどの程度属するか属さないかで示される集合として現せばよく、この集合をファジィ集合といいます。

 具体的にクリスプ集合とファジィ集合がどのようになっているかを下図に示します。
クリスプ集合 ファジィ集合
クリスプ集合 ファジィ集合
    ※ グレードとは、それぞれの値が集合に属する割合のこと
    ※ クリスプ集合では、グレードを0,1で表す
    ※ ファジィ集合では、グレードを0〜1で表すことにより、あいまいさを表現する

 この図からわかるように、ファジィ集合は、グレードとして0〜1の中間値を取ることができ、この中間値によりあいまいさを表現します。
 したがって、あいまいな言葉(人間的な感覚)を数値として表現することが可能になります。

○ファジィ推論

 では、このファジィ集合をどのように使用していくかを考えます。

 例えば、私たちは通常、エアコンで室温を快適にします。この時に、部屋が暑いと感じたならば、冷房の設定温度を下げたり、逆に寒いと感じたならば冷房の設定温度を上げたりします。

   このことを推論という形で表現すると、

      「もし 室温が少し暑く感じる ならば 冷房の強さを少し増す」
      「もし 室温がかなり暑く感じて、室内にかなりの人数がいるならば 冷房の強さをかなり増す」
   などと表現することができます。

 このように「人間が日常行っている推論を、ファジィ集合を用いて行う推論」のことをファジィ推論と呼びます。


 上述の推論は、「IF(もし)■■■■ THEN(ならば) □□□□」と表現できることがわかります。
この条件部(■■■■)や結論部(□□□□)で示されるあいまいな表現方法(少し暑い,かなりの人数、少し増す等)にファジィ集合を用いることにより、これらの推論を実現することが可能です。

 このファジィ推論を実現することで、入ってくる情報に対して人の感覚で推論を行い、その結果を出すことができます。そのため、情報に対する厳密な数学モデルを使用することなく、いろいろな推論結果を合成して、総合的判断を下すことが容易なため(間接的に室内の人数、昼と夜、などの室温以外の推論を付加できる)、幅の広い推論を行うことができます。

これらの事は、以下に示すメリットにつながります。
 ・操作に関する人間のノウハウを推論として利用できる
 ・総合的な判断ができるため、きめの細かい推論が可能
 ・厳密な数学モデルが不要
 ・人間の感覚に近い結果が得られる


○ファジィ制御について

 ここでは、弊社に最も関連の深い制御にファジィを応用する場合(ファジィ制御)、どのように制御部分を設計していくかの一例を示します。

 なお、制御系はフィードバック制御を考えますので、コントローラ内のPID制御演算をファジィ制御演算に置き換える形となります。

 ファジィ制御の設計手順は、
  @ファジィ集合の作成
  Aファジィ推論則(ファジィルール)の作成
のようになり、以下それぞれについて説明します。
 また、Bとして実際のファジィ推論(ファジィ制御演算方法)を示します。


@ファジィ集合の作成

 PID制御の場合に入力は偏差(設定値−測定値)となりますが、ファジィ制御では、偏差と偏差の変化速度の2入力とします。
 また、出力としては、現在の出力値からどれだけ出力を変化させるかの変化量を求めることにします。

 まず、これらの入力や出力をファジィ集合により表現します。
  ・偏差: 「正に大きい(PB)」「正に小さい(PS)」「ゼロ(ZO)」「負に小さい
(NS)」「負に大きい(NB)」の5つのファジィ集合で表現します。
偏差ファジィの集合
偏差ファジィの集合

  ・偏差の変化速度: 「上がる方向に速い(PB)」「上がる方向に遅い(PS)」「ゼロ
(ZO)」「下がる方向に遅い(NS)」「下がる方向に速い(NB)」
の5つのファジィ集合で表現します。
偏差の変化速度のファジィ集合
偏差の変化速度のファジィ集合

  ・出力: 「出力をたくさん増やす(PB)」「出力を少し増やす(PS)」「出力を変化さ
せない(ZO)」「出力を少し減らす(NS)」「出力をたくさん減らす(NB)」の
5つのファジィ集合で表現します。
出力のファジィ集合
出力のファジィ集合


Aファジィ推論則(ファジィルール)の作成

 @で入力と出力をファジィ集合として現しましたが、これらのファジィ集合を使用し、ファジィの推論則を作ります。

ファジィ推論則を構築するにあたり、
  偏差が0の場合、偏差の変化速度に応じてどのように出力を変化させ、偏差の変化速度を0とするか(偏差の変化速度が0ならば、現在の出力を維持させるなど)
偏差の変化速度が0の場合、偏差に応じてどのように出力を変化させ、偏差を縮める方向に出力を変化させるか
を考えて構築すると、例えば、以下のような推論則ができます。これらの推論則を、ファジィルールとも呼び、ルールベースの演算になっていることがわかります。


<ファジィ推論則(ファジィルール)>
  IF (「偏差がZO」かつ「偏差の変化速度がZO」)THEN 「出力の変化はZO」
  IF (「偏差がZO」かつ「偏差の変化速度がPS」)THEN 「出力の変化はNS」
  IF (「偏差がZO」かつ「偏差の変化速度がPB」)ThEN 「出力の変化はNB」
  IF (「偏差がZO」かつ「偏差の変化速度がNS」)THEN 「出力の変化はPS」
  IF (「偏差がZO」かつ「偏差の変化速度がNB」)THEN 「出力の変化はPB」
  IF (「偏差がPS」かつ「偏差の変化速度がZO」)THEN 「出力の変化はPS」
  IF (「偏差がPB」かつ「偏差の変化速度がZO」)THEN 「出力の変化はPB」
  IF (「偏差がNS」かつ「偏差の変化速度がZO」)THEN 「出力の変化はNS」
  IF (「偏差がNB」かつ「偏差の変化速度がZO」)THEN 「出力の変化はNB」

 これらの推論則に基づき出力の変化量(推論結果)を求め、現在の出力に反映させることで、ファジィ制御が可能になります。
 なお、推論の具体的な方法として、「Min−Max 重心法」をはじめ多数の方法が考案されています。


B実際のファジィ推論例

 ファジィ推論の一例を以下に示します。

 ここでは、@,Aで作成したファジィ集合,ファジィルールを使用して、偏差が30℃,偏差の変化速度が−1℃/分の場合のファジィ推論(ファジィ制御の出力計算)を行います。

   ファジィ推論の手順は、
   @)ファジィ集合のグレードの導出
   A)ファジィ推論結果の導出
となります。

@)ファジィ集合のグレードの導出

最初にファジィ集合のグレードを導出します。
まず、「偏差」のファジィ集合のグレードですが、偏差30℃とすると、偏差のファジィ集合のうち、「正に大きい(PB)」と「正に小さい(PS)」の2つのファジィ集合がグレードに値を取ることがわかります。その時のグレードは、下図のように「正に大きい(PB)」は0.2、「正に小さい(PS)」は0.8となります。

「偏差」のファジィ集合のグレードについて
図 「偏差」のファジィ集合のグレードについて

 次に、「偏差の変化速度」のファジィ集合のグレードですが、偏差のファジィ集合のグレードを求めたときと同様に考えると、偏差の変化速度−1℃/分は、「ゼロ(ZO)」「下がる方向に遅い(NS)」の2つのファジィ集合がグレードに値を取ることがわかります。その時のグレードは、「ゼロ(ZO)」「下がる方向に遅い(NS)」共に0.5をとります。
「偏差の変化速度」のファジィ集合のグレードについて
図 「偏差の変化速度」のファジィ集合のグレードについて

A)ファジィ推論結果の導出

 ファジィ推論は、「グレードが値を持つファジィ集合」を含むファジィ推論の演算を行い推論結果を求めます。複数のファジィ推論結果がある場合には、それぞれの推論結果を合成して求めます。

 「グレードが値を持つファジィ集合」とは、この例の場合、偏差のファジィ集合「正に大きい(PB)」と「正に小さい(PS)」、偏差の変化速度のファジィ集合「ゼロ(ZO)」と「下がる方向に遅い(NS)」の4つのファジィ集合のことです。

これらの「偏差」と「偏差の変化速度」のファジィ集合を含むファジィ推論則は、Aのファジィルールの中では、以下の2つの推論則になります。

<適用されるファジィルール>
 IF(「偏差がPS」かつ「偏差の変化速度がZO」)THEN「出力の変化はPS」
 IF(「偏差がPB」かつ「偏差の変化速度がZO」)THEN「出力の変化はPB」
 したがって、この2つの推論を行い、それぞれの結果を合成しファジィ推論結果を求めることになります。


ファジィ推論は、以下のように行います。

 まず、【IF(「偏差がPS」かつ「偏差の変化速度がZO」)THEN「出力の変化はPS」】のファジィ推論についてですが、「偏差がPS」のファジィ集合のグレードと「偏差の変化速度がZO」のファジィ集合のグレードを比較し、値の小さいものを出力に反映させます。この場合、「偏差がPS」のグレードは0.8、「偏差の変化速度がZO」のグレードは0.5ですので、「偏差の変化速度がZO」のグレードである0.5を出力に反映させます。


 出力への反映のさせ方は、出力の変化分のファジィ集合(PS)がグレード0.5(前述した「偏差の変化速度がZO」のグレードの値)の部分まで適応されると考え、その面積を推論結果とすることにより実現します。すなわち、本来「出力の変化分(PS)」のファジィ集合は三角形の形を取っていますが、グレード「0.5」の部分にラインを引き、台形として考え、その面積をもって推論結果とします。

【IF(「偏差がPS」かつ「偏差の変化速度がZO」)THEN「出力の変化はPS」】のファジィ推論
図 【IF(「偏差がPS」かつ「偏差の変化速度がZO」)THEN「出力の変化はPS」】のファジィ推論

 同様に、【IF(「偏差がPB」かつ「偏差の変化速度がZO」)THEN「出力の変化分はPB」】のファジィ推論も行います。


 これらのファジィ推論から求められたファジィ推論結果(図形)を重ね合わせ推論結果とします。但し、このままでは推論結果が図形の面積で現される形となり、数値(出力の変化分[%])として現されていません。そこで、求められた図形の重心をとることにより、1つの数値として、出力の変化分(最終的なファジィ推論結果)を求めます。(下図参照)

   下図より最終的なファジィ推論結果として、43.4%の出力の変化分が算出されます。

ファジィ推論の合成について
図 ファジィ推論の合成について

なお、このファジィ推論方法は「Min−Max 重心法」と呼ばれているものです。


次回の予定のファジィについて その2 「弊社のファジィ機能について」に続く。
このページのトップへ戻る
線
他のトピックス
 制御関連
 ハード関連
 センサ関連
技術解説トップページへ戻る
戻る 理化工業株式会社
RKC INSTRUMENT INC.
ファジィについて その2
ホームページへファジィについて その1