PID制御は、AIで更に賢くなる

高速・高精度を実現する「リアルタイム学習 AI-PID制御」

【特許技術】 リアルタイム学習 AI-PID制御の解説

このページでは「リアルタイム学習 AI-PID制御」の解説を行っています。
本特許に関するプレスリリースも併せてご覧ください。 https://aising.jp/news/10876/

PID制御

PID 制御は、出力値と目標値の偏差と、その積分値/微分値をもとに制御量を調整するフィードバック制御手法です。 古典制御に分類されますが、過去の実績や調整の容易さから、現在に至るまで主力の制御手法であり続けています。

制御対象への操作量を \(u(t)\), 出力と目標値の偏差を \(e(t)\), 比例 (Proportional)、積分 (Integral)、微分 (Derivative) の ゲインをそれぞれ \(K_p\), \(K_i\), \(K_d\) としたとき、操作量は以下の式で表されます。 $$ \begin{equation} u(t) = K_{p} e(t) + K_{i} \int_{0}^{t}e(t')dt' + K_{d} \frac{de(t)}{dt} \end{equation} $$ また、制御ブロック線図は以下です。制御の目標値を \(r\) , 制御対象の実際の出力を \(y\) とすると、 その偏差が \(e\) となり、それを PID コントローラに入力にした際の出力が操作量 \(u\) となります。
しかし、PID 制御等のフィードバック制御は、誤差 \(e\) が発生してから制御量が調整される機構のため、 どうしても修正が後追いになってしまいます。そのため、急激な外乱等の影響を避けることが難しいという問題点があります。

AI-PID 制御

フィードバック制御の問題点を解決する手段として、外乱等の影響が誤差として出現する前に対応する フィードフォワード制御を併用することが有効であり、その手法の一つとして、制御対象の将来状態を予測する「予測器」の活用が考えられます。

予測器を用いた制御ブロックの例が以下です。PID コントローラに加え、コントローラ出力 \(u_0\) と 過去の出力値 \(y\) から将来の予測出力値 \(\hat{y}\) を算出する「予測器」と、予測値 \(\hat{y}\) と 目標値 \(r\) の差分から補正量 \(u_1\) を生成する「補正器」を追加しています。予測器により、制御対象の出力の将来的な変動を予測し、 それに基づき誤差が現れる前に操作量を補正することで、PID コントローラのみの場合よりも制御性能の向上が期待されます。
予測器の構築は様々な手法が考えられますが、弊社では木構造ベースの AI アルゴリズムの活用に注力して研究を行っているため、 制御方式を "AI-PID" と呼んでいます。蓄積した過去データに基づいて機械学習モデルを構築し、予測器として制御に組み込みます。

リアルタイム学習 AI-PID制御

AI-PID 制御では、AI 予測器が将来の出力値を精度よく予測できていることが前提となります。 しかしながら、制御対象の特性が経年劣化等により変動する場合、古いデータで構築した AI モデルの予測精度は落ち、 結果として制御性能が劣化することが懸念されます。 そこで弊社は、運用時にもデータをリアルタイムで学習し予測モデルの劣化を防ぐ "リアルタイム学習 AI-PID制御"を提案しており、特許を取得しています。 制御対象の変化に自動的に対応し、制御性能劣化を起こさない予測制御システムの構築が期待出来ます。

リアルタイム学習 AI-PID制御の制御ブロックの例が以下の図です。 基本的には、運用時データを AI モデルにリアルタイムで追加学習させればよいのですが、 補正前の PID コントローラの出力 \(u_0 \) から初期モデルを構築している場合、PID コントローラの出力 \(u_0\) が補正されていない場合、 すなわち \(u_0 = u\) の場合のみ追加学習したいケースが存在します。

そのため、以下の図の例では AI-PID 制御に 3 つのブロックを追加しています。
・補正器の出力 \(u_m\) が無効化条件を満たすかを判定する「判定部」
・無効と判定された場合に無効化処理 (\(u_1= 0\) ) をする「無効化処理部」
・\(u_1 = 0\) の場合に、\(u_0\) と \(y\) を記憶する「データロガー」

判定部では、補正器から出力された補正値 \(u_m\) が、既定の条件を満たすかを判断します。 それにより、異常値で操作量が補正されるのを防ぐことができ、制御の安定化につながります。

無効化処理部では、判定部が操作量を補正すべきでないと判断した場合に無効化処理を行います。 補正が無効化された場合、入力をモデルの追加学習に使うことが出来るため、データロガーに蓄積し、そのデータを基にAI 予測器を追加学習により更新します。

制御応用に特化した AI アルゴリズム MST (Memory Saving Tree)

リアルタイム学習 AI-PID制御を行う場合、予測器として用いる AI アルゴリズムには、逐次リアルタイム学習が可能であることと、 制御に組み込むのに十分な高速応答性や軽量性を備えていることが必要です。 エイシングでは、そのような特性を備えた MST (Memory Saving Tree) をはじめとする独自アルゴリズムを開発しています。

MSTの詳細についてはこちらのページをご覧ください。 https://aising.jp/mst/
MSTが搭載されたマイコン
記事発行日: 2021年10月12日 最終更新日: 2021年10月12日