ニューラル ネットワーク制御システムの概要
ニューラル ネットワークは動的システムの同定および制御への応用で成功を収めています。その採用は、多層パーセプトロンの普遍近似能力のおかげで、非線形システムのモデル化や汎用非線形コントローラーの実装において広まっています [HaDe99]。このトピックでは、Deep Learning Toolbox™ ソフトウェアに実装されており、予測および制御用としてよく知られた次の 3 つのニューラル ネットワーク アーキテクチャを紹介し、それぞれのアーキテクチャの概要と使用方法を説明します。
モデル予測制御
NARMA-L2 (またはフィードバック線形化) 制御
モデル規範形制御
ニューラル ネットワークを制御に使用する場合は、通常次の 2 つのステップが必要になります。
システム同定
制御設計
システム同定の段階では、制御対象プラントのニューラル ネットワーク モデルを開発します。制御設計の段階では、ニューラル ネットワーク プラント モデルを使用してコントローラーの設計 (または学習) を行います。このトピックで説明する 3 つの制御アーキテクチャはどれも、システム同定の段階は同じです。ただし、制御設計の段階はアーキテクチャごとに異なります。
モデル予測制御の場合、プラント モデルを使用してプラントの将来の動作を予測し、最適化アルゴリズムを使用して将来の性能を最適化する制御入力を選択します。
NARMA-L2 制御の場合、コントローラーは単にプラント モデルを再配置したものです。
モデル規範形制御の場合、コントローラーは規範モデルに従ってプラントを制御するように学習するニューラル ネットワークです。ニューラル ネットワーク プラント モデルはコントローラーの学習支援に使用されます。
以降の 3 つの節では、モデル予測制御、NARMA-L2 制御、およびモデル規範形制御について説明します。各節では、制御概念の概要と、それに続けて適切な Deep Learning Toolbox 関数の使用例を説明します。これらの 3 つのコントローラーは、Deep Learning Toolbox ブロックセットに含まれる Simulink® ブロックとして実装されています。
用途に最適なコントローラーを判断するときに役立つように、コントローラーの主要な特徴をまとめたものを以下に示します。各コントローラーには、それぞれの強みと弱みがあります。すべての用途に適したコントローラーはありません。
モデル予測制御 — このコントローラーは、ニューラル ネットワーク モデルを使用して、生じる可能性のある制御信号に対する将来のプラントの応答を予測します。その後、最適化アルゴリズムで、将来のプラント性能を最適化する制御信号を計算します。ニューラル ネットワーク プラント モデルにオフラインで、バッチ形式によって学習させます (これは、3 つの制御アーキテクチャすべてに共通です)。ただし、このコントローラーでは、サンプル時間ごとに最適化アルゴリズムを実行して最適な制御入力を計算するため、大量のオンライン計算が必要です。
NARMA-L2 制御 — このコントローラーに必要な計算量は、これら 3 つのアーキテクチャのうち最小です。このコントローラーは、オフラインでバッチ形式によって学習させたニューラル ネットワーク プラント モデルを単に再配置したものです。唯一のオンライン計算は、ニューラル ネットワーク コントローラーによるフォワード パスです。この方法の欠点は、プラントがコンパニオン形式であるかコンパニオン形式モデルで近似できなければならないという点です (NARMA-L2 モデルの同定にコンパニオン形式モデルの記載があります)。
モデル規範形制御 — このコントローラーのオンライン計算は、NARMA-L2 同様最小限です。ただし NARMA-L2 とは異なり、モデル規範形アーキテクチャはニューラル ネットワーク プラント モデルに加えて、別のニューラル ネットワーク コントローラーにオフラインで学習させる必要があります。このコントローラーの学習では、動的な逆伝播 [HaJe99] を使用する必要があるため、大量の計算が必要です。良い面としては、モデル規範形制御は、NARMA-L2 制御の場合よりも大きな種類のプラントに適用できます。