LabVIEW PID and Fuzzy Logic Toolkit API Reference

ファジーコントローラ

  • 更新日2023-02-21
  • 3分で読める

ファジーコントローラを使用してファジーシステムを制御することができます。従来のほとんどの制御アルゴリズムでは、制御したいシステムの数学的モデルが必要です。しかし、多くの物理システムは数学的にモデリングすることが困難または不可能です。さらに、多くのプロセスは非線形であるか、または従来の方法で制御するには複雑すぎます。しかし、制御方法を定性的に記述できれば、ファジー論理を使用して、経験則的な方法を模倣したファジーコントローラを作成できます。

以下の図は、ファジーコントローラのプロセスを示しています。

ファジー化

ファジー化とは、クリスプ(数値)入力値を対応する入力言語変数言語要素と関連付けるプロセスです。

たとえば、温度計が示す測定値を現在の温度言語変数の言語要素寒い適温暑いに関連付けるファジーコントローラがあるとします。言語要素のメンバーシップ関数によっては、温度値は1つ以上の 言語要素と対応する場合があります。

言語による制御方法を実装する

ファジーシステムの入力値をファジー化した後、ファジーコントローラは対応する入力言語要素とルールベースを使用して出力言語変数の結果言語要素を確定します。

たとえば、部屋の現在の温度が50度で、言語要素寒いにメンバーシップの度合い0.4で対応するとします。また、設定温度が70度で、言語要素適温にメンバーシップの度合い0.8で対応するとします。ファジーコントローラは、IF 現在の温度寒い AND 設定温度適温, THEN ヒーター設定というファジーシステムのルールを呼び出します。

このルールは、「現在の温度寒い」と「設定温度適温」という2つの節で構成されていることに注目してください。各前件部の真理値は、対応する言語要素内の言語変数のメンバーシップの度合いと同等です。ファジー論理コントローラは、前件部接続子を使用して、集計されたルール前件部の真理値の計算方法を決定します。この例で呼び出されたルールは、前件部のうち最小のメンバーシップ度合いを集計されたルール前件部の真理値として使用するAND(最小)前件部接続子を使用しています。よって、集計されたルール前件部の真理値は0.4です。

ファジーシステムのルールごとにサポートの度合いを指定できます。ルールの重みは、サポートの度合いと集計されたルール条件の真理値の積です。ファジーコントローラは、非ファジー化を実行する前にルールの重みに基づいて出力言語変数のメンバーシップ関数をスケールするために含意演算方法を使用します。

非ファジー化

非ファジー化とは、言語要素内の出力言語変数のメンバーシップの度合いをクリスプ数値に変換するプロセスです。ファジーコントローラは、いくつかの数学的な方法の1つを使用して非ファジー化を実行します。ファジーコントローラで何が最も正確な非ファジー化方法かは、制御アプリケーションにより異なります。

関連情報

ファジーコントローラのI/O特性

閉ループ制御構造内のファジーコントローラ

Log in to get a better experience