モデル予測制御

モデル予測制御とは?

近年、製品やサービスの価値の追求が急速に進む中で、システムに求められる機能・性能は、高度化かつ複雑化の一途を辿っています。例えば、センサーデータに基づく状況把握や予測、あるいは、次の動き方を支援する行動計画や判断といった高度な技術の開発に向けた挑戦が活発に行われてきました。

これらを実現させるためにセンサー情報処理、データ解析、あるいは、人工知能などの分野における様々なアルゴリズムの適用が進められています。 制御系の分野においても、厳しい性能要求、システムの複雑化、センサー数の増加といった流れの中で、今後ますます高度な制御技術の必要性が高まっています。

モデル予測制御の考え方

モデル予測制御(MPC: Model Predictive Control)は、各時刻で未来の応答を予測しながら最適化を行う制御手法です。

オンラインで高速に最適化問題を計算しながらフィードバック制御を行います。複雑な系に対して、より高性能な制御を実現することが期待されて幅広い産業分野で高い注目を集めています。

モデル予測制御は、実時間最適制御やReceding Horizon制御という呼ばれ方もされます。

鍵は「予測」と「最適化」

下図は、制御対象とモデル予測制御から構成されるフィードバック制御系のブロック線図を表しています。

フィードバック制御系のブロック線図

フィードバック制御系のブロック線図

モデル予測制御の鍵となる技術は「予測」と「最適化」です。

モデル予測制御は、コントローラの内部に予測モデル(言い換えると、制御対象モデル)を持つことで、制御対象の現時刻からある有限区間に渡る未来の振る舞いを予測します。制御を行うためには、制御対象の動的な特性、つまり、ダイナミクスを適切に捉えて、モデルとして表現する必要があります。

予測モデルの代表例は、ステップ応答モデルやインパルス応答モデル、伝達関数モデル、あるいは、状態方程式などが挙げられるでしょう。

実際に制御を行うためには、予測した結果を利用し、制御対象に与える制御入力を決定しなければなりません。そこで、モデル予測制御では、各サンプリング時間で最適化問題を解くことにより制御入力を一意に決定します。

下図に示すように制御対象の出力をある目標値に追従させたい場合、現時刻から未来の予測区間において追従誤差の面積を最小化するような制御入力の時系列を探索します。

モデル予測制御の仕組み

モデル予測制御の仕組み

これはある種の最適化問題となるため、数値最適化のアルゴリズムを使用して、解を得ることができます。最終的に計算された時系列の一番目の要素を、実際の制御入力として制御対象に適用します。そして、次のサンプリング時間に移行し、再び最適化問題を解いて制御入力を決定する作業を逐次繰り返していきます。フィードバック制御となっているのは、各サンプリング時間において、毎回予測を行う際に、現時刻の状態量をセンサーから計測された値で補正するためです。すなわち、予測の初期値を毎回修正するということです。

モデル予測制御の利点

モデル予測制御は、制御系の性能を最大限に引き出す手段として期待されていますが、その背景には次のような利点が考えられます。

  • 制約順守 物理・性能・安全などの制約を守りながら制御
  • 協調上手 多入出力系のような複雑な対象へ適用しやすい
  • 最適性 最適制御に実用的なフィードバック制御の補正効果
  • 汎用性 汎用的な手法ゆえ、幅広い応用先が考えられる

モデル予測制御の大きな特徴として、コントローラ自身が制約条件を考慮して制御を行ってくれる点が挙げられます。例えば、アクチュエータ出力可能な上下限リミットが決まっている場合、その範囲内で動作しながら制御を行います。これは予測しながら最適化問題を解くという性質上、制約条件を満たすような制御入力の探索が可能となるからです。また、入出力が多い複雑な制御系に対する拡張も容易です。例えば、化学プラントのような大規模な多入出力系や自動車におけるアクセル、ブレーキ、ステアリングの協調制御など、汎用的な制御手法であるため、様々な複雑なシステムへの応用が見込めます。

モデル予測制御の応用先

モデル予測制御は、1970年代後半に開発され、主に石油精製や化学プロセス等、プロセス制御系を中心に適用されてきました。近年の計算機(ハードウェア)の性能向上やアルゴリズム(ソフトウェア)の進化によって、自動車、航空機、産業機械、エネルギーマネジメントシステムなど、その適用範囲は広がりつつあります。

自動車業界

エンジン制御(EGR-VGT)

吸気側に戻す排気ガス流量の制御とターボチャージャーによるブースト圧力の制御を同時に行います。 これらを制御するために、EGR弁の開度とタービンハウジング内の排気ガス通路面積を操作する必要があります。ただし、弁開度や通路面積には物理的な上下限制約が存在するため、このような制約を考慮しながら制御を行わなくてはなりません。

ハイブリッド自動車

燃費の改善が一つの大きなテーマとなりますが、燃料消費量を抑制するように、エンジン、モーター/ジェネレータ、バッテリー等の各ユニット間でうまく協調させてエネルギーのやりとりを行うことが課題となります。

このようなエネルギーマネジメントの領域もモデル予測制御の適用先として検討することができます。

先進運転支援システム(ADAS: Advanced Driving Assistant System)

開発が急速に進んでいる分野です。ADAS(先進運転支援システム)の領域においても、アダプティブクルーズコントロール(ACC)や障害物回避といった車両運動制御への適用が期待されています。

エネルギー・インフラ

家庭用エネルギーマネジメントシステム(HEMS: Home Energy Management System)

一般的に家庭におけるエネルギーの流れは、様々な機器を介して行われます。 太陽光発電、家電、家庭用/車載用蓄電池、系統連携インバータ、あるいは、給湯器など複数の要素が考えられます。また、エネルギーの形態も電気、熱、ガスと様々です。このような機器間で複雑なエネルギーのやりとりを行いながら、いかに上手にエネルギーを発電し、蓄え、賢く使うかを自動化することがエネルギーマネジメントに強く求められます。

例えば、家庭における電気料金を抑制するという機能を実現する手段としてモデル予測制御が考えられます。発電電力や消費電力を24時間先まで予測し、電気料金を最小化するように蓄電池の充放電パターンを探索するというアプローチが考えられます。

また、売買電力や機器容量の制限、あるいは、逆潮流防止などは制約条件として扱うことができます。

モデル予測制御の要素技術

モデル予測制御を構成するためには次のような技術要素が求められます。

予測モデリング技術

物理モデリングあるいは統計モデリングによる予測モデルの導出
例:伝達関数、状態方程式

数値最適化技術

最適化問題をリアルタイムで解く高速な数値最適化ソルバー
例:二次計画問題(QP)の解法 … 有効制約法、内点法、共役勾配法など

状態観測器(状態オブザーバ)設計技術

測定できない制御対象の状態量を推定する状態観測器
例:カルマンフィルタ

数値シミュレーション技術

PC上で計算モデルを使用した閉ループ系の仮想実験

これらの要素を用意し、また、組み合わせる必要があるため、一から全ての要素を開発し、PC での数値シミュレーションから実機への実装までを考えると、なかなか長い道のりが予想されます。

モデル予測制御ツール

MATLAB®は、行列計算にはじまり制御系設計・解析のツールとして長い歴史を持ち、学術界および産業界で幅広く利用されています。モデル予測制御の設計やシミュレーションに関しては、Model Predictive Control Toolbox™という専用の拡張パッケージが用意されています。

Model Predictive Control Toolboxは、20年以上の長い歴史を持ちます。当初から著名な研究者(Prof. M. Morari, Prof. N. Ricker, and Prof. A. Bemporad)と共同開発されたツールです。Model Predictive Control Toolboxは、次のような機能を提供しています。

  • 専用の数値最適化(QP)ソルバー
  • 設計・シミュレーション用のユーザーインターフェース
  • Simulink® 用の MPC コントローラブロック
  • コントローラブロックの自動 C コード生成対応

最適化問題の定式化やソルバーはツール側で準備されているため、予測モデルを設計し、必要なパラメータ(予測区間、目的関数の重み、制約条件など) を設定すれば、すぐにシミュレーション実行が可能です。モデル予測制御の性能評価にいち早く到達できるのがModel Predictive Control Toolboxの大きな利点です。

詳しくは、Model Predictive Control Toolboxの製品ページをご覧ください。

参考: MBD (モデルベース開発)