(57)【特許請求の範囲】
【請求項１】
プロセスを制御するときに使用するためのモデル予測コントローラをチューニングする方法であって、
前記プロセス用のプロセスモデルであって、一組のプロセスモデルパラメータのそれぞれについてある値を含む、プロセスモデルを取得すること、
前記一組のプロセスモデルパラメータの少なくとも１つのパラメータについて、前記プロセスモデルと前記プロセスの不一致を同定するプロセスモデル不一致指標を取得すること、および、
前記プロセスモデルおよび前記プロセスモデル不一致指標に基づいてコントローラ最適化を実施することを含み、前記コントローラ最適化を実施することは、前記プロセスモデル不一致指標に関連するある量の前記プロセスモデルと前記プロセスの不一致を有する、二つ以上のコントローラ設計／チューニングパラメータのうちの各々に対する異なる値の組および前記プロセスモデルを使用して前記モデル予測コントローラの動作のシミュレーションを行って、前記モデル予測コントローラについて制御ベース性能尺度を確定すること、および、前記制御ベース性能尺度に基づいて前記モデル予測コントローラで使用するための前記コントローラ設計／チューニングパラメータに対する値の組の最適値を確定することを含む方法。
【請求項２】
前記コントローラ最適化を実施することは、複数の異なる組の前記プロセスモデルと前記プロセスの不一致値のそれぞれにおいて、一組の点としてチューニングマップを生成するために、二つ以上のコントローラ設計／チューニングパラメータのそれぞれに対する異なる値の組および前記プロセスモデルを使用して前記モデル予測コントローラの動作のシミュレーションを行い、当該シミュレーションを行うときに、前記モデル予測コントローラについて制御ベース性能尺度を確定することを含み、前記チューニングマップ内の各点は、確定される最適な制御ベース性能尺度に関連する前記コントローラ設計／チューニングパラメータに対する値の組を使用して、特定の一組の前記プロセスモデルと前記プロセスの不一致値において取得可能な前記確定される最適な制御ベース性能尺度に関連する請求項１に記載の方法。
【請求項３】
前記制御ベース性能尺度は積分絶対誤差を含む請求項２に記載の方法。
【請求項４】
前記コントローラ設計／チューニングパラメータは、１つまたは複数のモデル予測制御アルゴリズムチューニングパラメータを含む請求項３に記載の方法。
【請求項５】
ユーザに見えるように、ディスプレイデバイス上で前記チューニングマップを表示することを含む請求項４に記載の方法。
【請求項６】
ユーザが、前記チューニングマップ内の特定の点を選択することによって、前記モデル予測コントローラをチューニングするときに使用するコントローラ設計／チューニングパラメータに対する特定の値の組を選択することを可能にすることを含む請求項５に記載の方法。
【請求項７】
前記プロセスモデル不一致指標を取得することは、前記一組のプロセスモデルパラメータの１つまたは複数のパラメータについて前記プロセスモデルと前記プロセスの不一致の範囲を示すモデル不一致範囲を取得することを含み、前記モデル不一致範囲は、前記チューニングマップの部分空間を規定し、前記チューニングマップを表示することは、前記チューニングマップ上に前記モデル不一致範囲部分空間を表示することを含む請求項６に記載の方法。
【請求項８】
ユーザが、前記チューニングマップ内で前記モデル不一致範囲部分空間を移動させて、前記モデル不一致範囲部分空間を考慮して最適な適応／チューニング点を確定することを可能にすることをさらに含む請求項７に記載の方法。
【請求項９】
前記プロセスモデル不一致指標を取得することは、前記チューニングマップの部分空間サイズを規定する前記プロセスモデルと前記プロセスの不一致の範囲を示すモデル不一致範囲を取得することを含み、また、第２の性能尺度について最適な値を生成する前記部分空間サイズの前記チューニングマップ内で特定の部分空間を見出すために第２の最適化を実施することを含む、第２の最適化を実施することを含む請求項８に記載の方法。
【請求項１０】
前記第２の性能尺度は、前記特定の部分空間内で、前記チューニングマップ内の前記点の前記制御ベース性能尺度の最悪値を確定する請求項９に記載の方法。
【請求項１１】
前記モデル予測コントローラについて新しいコントローラモデルを生成するときに使用するための新しい一組のプロセスモデルパラメータ値を確定すること、および、前記第２の最適化に基づいて前記モデル予測コントローラで使用するためのコントローラ設計／チューニングパラメータに対する値の組を確定することを含む請求項１０に記載の方法。
【請求項１２】
前記チューニングマップ内の前記点のうちの１つの点に関連する前記コントローラ設計／チューニングパラメータに対する値として、前記コントローラ設計／チューニングパラメータに対して新しい一組の値を確定することを含む請求項４に記載の方法。
【請求項１３】
前記チューニングマップ内の前記点のうちの１つの点として、新しいコントローラ動作点を選択すること、前記プロセスを制御するときに使用するために、前記選択されたコントローラ動作点に関連する前記コントローラ設計／チューニングパラメータに対する値を前記モデル予測コントローラに提供すること、および、前記選択されたコントローラ動作点に関連する前記プロセスモデルと前記プロセスの不一致値に基づいて、新しいコントローラモデルを前記モデル予測コントローラに提供することを含む請求項４に記載の方法。
【請求項１４】
プロセスモデル不一致指標を取得することは、誤差信号に対して自己相関手法を実施することを含む請求項４に記載の方法。
【請求項１５】
前記コントローラ設計／チューニングパラメータは、コントローラ形態を指定するコントローラ形態パラメータを含む請求項４に記載の方法。
【請求項１６】
前記コントローラ形態パラメータは、観測器ベースのモデル予測コントローラ形態または非観測器ベースのモデル予測コントローラ形態の一方を示す請求項１５に記載の方法。
【請求項１７】
前記コントローラ形態パラメータは、汎用カルマンフィルタ観測器ベースのモデル予測コントローラ形態または簡易カルマンフィルタ観測器ベースのモデル予測コントローラ形態の指標を含む請求項１６に記載の方法。
【請求項１８】
前記コントローラ設計／チューニングパラメータは、１つまたは複数の観測器ユニットチューニングパラメータを含む請求項１７に記載の方法。
【請求項１９】
前記１つまたは複数の観測器ユニットチューニングパラメータは、１つまたは複数のペナルティ変数を含む請求項１８に記載の方法。
【請求項２０】
前記１つまたは複数の観測器ユニットチューニングパラメータは、時定数か、信号対雑音比か、外乱関数の共分散か、または雑音関数の共分散を含むカルマンフィルタペナルティ変数を含む請求項１９に記載の方法。
【請求項２１】
前記１つまたは複数のモデル予測制御アルゴリズムチューニングパラメータは、ペナルティ変数か、制御ホライズンか、または予測ホライズンを含む請求項４に記載の方法。
【請求項２２】
プロセスプラントを制御するときに使用するための適応モデル予測コントローラであって、
コントローラモデルおよび１つまたは複数の変更可能なコントローラ設計／チューニングパラメータを有するモデル予測コントローラと、
チューニングユニットとを備え、前記チューニングユニットは、
前記プロセスプラント用のプロセスモデルであって、一組のプロセスモデルパラメータのそれぞれについてある値を指定する、プロセスモデルを格納するモデル格納部と、
前記モデル予測コントローラに通信可能に結合する最適化ユニットとを含み、前記最適化ユニットは、複数のシミュレーション事例のそれぞれについて、前記コントローラモデルが前記プロセスモデルに基づくとき、ゼロでない前記プロセスモデルと前記プロセスプラントの不一致の存在下で前記モデル予測コントローラの動作をシミュレートし、それぞれのシミュレーション事例中に、前記モデル予測コントローラは、二つ以上のコントローラ設計／チューニングパラメータの各々に対する異なる値の組によって構成され、前記最適化ユニットは、前記シミュレーション事例のそれぞれについてコントローラ性能尺度を確定し、前記最適化ユニットは、前記コントローラ性能尺度に基づいて前記モデル予測コントローラで使用するための、前記組のコントローラ設計／チューニングパラメータに対する値の組の最適な値をさらに確定する適応モデル予測コントローラ。
【請求項２３】
前記最適化ユニットは、複数の異なるゼロでない前記プロセスモデルと前記プロセスプラントの不一致の存在下で前記モデル予測コントローラの動作をシミュレートして、チューニングマップを生成し、前記チューニングマップは一組の点を含み、各点は、（１）前記複数の前記プロセスモデルと前記プロセスプラントの不一致のうちの特定の不一致において可能である確定された最適コントローラ性能尺度および（２）前記複数の前記プロセスモデルと前記プロセスプラントの不一致のうちの前記特定の不一致において前記最適コントローラ性能尺度をもたらした前記コントローラ設計／チューニングパラメータに対する特定の値の組に関連する請求項２２に記載の適応モデル予測コントローラ。
【請求項２４】
前記チューニングマップをユーザに表示するために、前記最適化ユニットに通信可能に結合するディスプレイユニットをさらに含む請求項２３に記載の適応モデル予測コントローラ。
【請求項２５】
前記最適化ユニットは、前記プロセスモデルパラメータの１つまたは複数について前記プロセスモデルと前記プロセスプラントの不一致の範囲を示すモデル不一致範囲を格納し、前記モデル不一致範囲は、前記チューニングマップ内のモデル不一致範囲部分空間を規定し、前記ディスプレイユニットは、前記チューニングマップ上で前記モデル不一致範囲部分空間を表示する請求項２４に記載の適応モデル予測コントローラ。
【請求項２６】
前記ディスプレイユニットは、前記プロセスモデルと前記プロセスプラントの不一致が無い点を中心にして前記チューニングマップ上で前記モデル不一致範囲部分空間を表示する請求項２５に記載の適応モデル予測コントローラ。
【請求項２７】
前記ディスプレイユニットは、ユーザが、前記チューニングマップ内で前記モデル不一致範囲部分空間を移動させて、前記モデル不一致範囲部分空間を考慮して最適な適応／チューニング点を確定することを可能にする請求項２６に記載の適応モデル予測コントローラ。
【請求項２８】
前記最適化ユニットはモデル不一致範囲を格納し、前記プロセスモデルと前記プロセスプラントの不一致の範囲を示す前記モデル不一致範囲は前記チューニングマップ内の部分空間サイズを規定し、前記最適化ユニットは、第２の最適化を実施して、第２の性能尺度について最適な値を生成する前記部分空間サイズの前記チューニングマップ内で特定の部分空間を確定する請求項２７に記載の適応モデル予測コントローラ。
【請求項２９】
前記最適化ユニットは、前記モデル予測コントローラについて新しいコントローラモデルを生成するときに使用するための新しい一組のプロセスモデルパラメータ値を確定し、また、前記第２の最適化に基づいて前記モデル予測コントローラで使用するためのコントローラ設計／チューニングパラメータに対する値の組を確定する請求項２８に記載の適応モデル予測コントローラ。
【請求項３０】
前記コントローラ設計／チューニングパラメータは、コントローラ形態を指定する１つまたは複数のコントローラ形態パラメータか、１つまたは複数の観測器ユニットチューニングパラメータか、あるいは１つまたは複数のモデル予測コントローラアルゴリズムペナルティ変数を含む請求項２９に記載の適応モデル予測コントローラ。
【請求項３１】
前記コントローラ設計／チューニングパラメータは、（１）観測器ベースのモデル予測コントローラ形態または非観測器ベースのモデル予測コントローラ形態の一方、あるいは、（２）第１のタイプまたは第２のタイプの観測器ベースのモデル予測コントローラ形態の一方を指定するコントローラ形態パラメータを含む請求項３０に記載の適応モデル予測コントローラ。
【請求項３２】
コントローラモデルを使用してプロセスプラントを制御するように動作するモデル予測コントローラをチューニングするために、コンピュータプロセッサ上に実装するための適応モデル予測コントローラチューニングユニットであって、
コンピュータ読取り可能媒体と、
前記プロセスプラント用のプロセスモデルであって、一組のプロセスモデルパラメータのそれぞれについてある値を指定する、プロセスモデルを格納するためにプロセッサ上で実行するための、前記コンピュータ読取り可能媒体上に格納される格納ルーチンと、
前記モデル予測コントローラの前記コントローラモデルが前記プロセスモデルに基づくとき、前記プロセスモデルと前記プロセスプラントの不一致の存在下で前記モデル予測コントローラの動作をシミュレートするためにプロセッサ上で実行するための、前記コンピュータ読取り可能媒体上に格納される最適化ルーチンとを備え、前記最適化ルーチンは、前記モデル予測コントローラが、二つ以上のコントローラ設計／チューニングパラメータのそれぞれに対する異なる値の組によって構成されるとき、前記モデル予測コントローラをシミュレートし、前記最適化ルーチンは、前記プロセスモデルと前記プロセスプラントの不一致の存在下で前記二つ以上のコントローラ設計／チューニングパラメータのそれぞれに対する異なる値の組についてコントローラ性能尺度を確定し、前記最適化ルーチンは、前記コントローラ性能尺度に基づいて前記モデル予測コントローラで使用するための、前記コントローラ設計／チューニングパラメータに対する異なる値の組の最適な値をさらに確定する適応モデル予測コントローラチューニングユニット。
【請求項３３】
前記コントローラ設計／チューニングパラメータは、コントローラ形態を指定するコントローラ形態パラメータか、１つまたは複数のモデル予測コントローラ観測器ユニットチューニングパラメータか、あるいは１つまたは複数のモデル予測コントローラアルゴリズムペナルティ変数を含む請求項３２に記載の適応モデル予測コントローラチューニングユニット。
【請求項３４】
前記最適化ルーチンは、複数の異なる前記プロセスモデルと前記プロセスプラントの不一致の存在下で前記モデル予測コントローラの動作をシミュレートして、チューニングマップを生成するよう実行され、前記チューニングマップは一組の点を含み、各点は、（１）前記複数の前記プロセスモデルと前記プロセスプラントの不一致のうちの特定の不一致において可能である確定された最適コントローラ性能尺度および（２）前記複数の前記プロセスモデルと前記プロセスプラントの不一致のうちの前記特定の不一致において前記最適コントローラ性能尺度をもたらした前記コントローラ設計／チューニングパラメータに対する特定の値の組に関連する請求項３３に記載の適応モデル予測コントローラチューニングユニット。
【請求項３５】
前記チューニングマップをユーザに表示するために、前記最適化ルーチンに通信可能に結合するディスプレイルーチンをさらに含み、前記ディスプレイルーチンは、ユーザが、前記チューニングマップ内の特定の点を選択して、前記選択された点に関連する前記コントローラ設計／チューニングパラメータに対する値を前記モデル予測コントローラに提供し、それにより、前記モデル予測コントローラをチューニングすることを可能にする請求項３４に記載の適応モデル予測コントローラチューニングユニット。
【請求項３６】
前記最適化ルーチンは、前記プロセスモデルパラメータの１つまたは複数について前記プロセスモデルと前記プロセスプラントの不一致の範囲を示すモデル不一致範囲を含み、前記モデル不一致範囲は、前記チューニングマップ内のある部分空間を規定し、前記ディスプレイルーチンは、前記チューニングマップ上で前記モデル不一致範囲部分空間を表示する請求項３５に記載の適応モデル予測コントローラチューニングユニット。
【請求項３７】
前記最適化ルーチンは、第２の最適化を実施して、第２の性能尺度について最適な値を生成する前記チューニングマップ内の特定のモデル不一致部分空間を確定するように実行され、前記モデル不一致部分空間は、前記プロセスモデルパラメータの１つまたは複数で前記プロセスモデルと前記プロセスプラントの不一致の範囲を示すモデル不一致範囲を規定する請求項３６に記載の適応モデル予測コントローラチューニングユニット。
【請求項３８】
前記最適化ルーチンは、前記モデル予測コントローラについて新しいコントローラモデルを定義するときに使用するための新しい一組のプロセスモデルパラメータ値を確定し、また、前記第２の最適化に基づいて前記モデル予測コントローラで使用するためのコントローラ設計／チューニングパラメータに対する値の組を確定するように実行される請求項３７に記載の適応モデル予測コントローラチューニングユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、正式に提出された出願形態であり、２００８年１月３１日に出願され、その全体の開示が参照により本明細書に明示的に組込まれる「Ｒｏｂｕｓｔ  Ａｄａｐｔｉｖｅ  Ｍｏｄｅｌ  Ｐｒｅｄｉｃｔｉｖｅ  Ｃｏｎｔｒｏｌｌｅｒ  ｗｉｔｈ  Ａｕｔｏｍａｔｉｃ  Ｃｏｒｒｅｃｔｉｏｎ  ｆｏｒ  Ｍｏｄｅｌ  Ｍｉｓｍａｔｃｈ」という名称の米国仮特許出願第６１／０２５，１９０号の出願日に対する優先権およびその出願日の利益を主張する。
【０００２】
本出願は、たとえば産業用プロセスプラントにおいて実施されるプロセス制御に関し、より詳細には、モデル不一致の存在下でモデル予測コントローラを使用してプロセスプラントの制御を実施する改良型方法に関する。
【背景技術】
【０００３】
プロセス制御のハードウェアおよびソフトウェアは、化学、製薬、および精製産業のほとんど全ての設備の主要なコンポーネントであり、何十億ドル規模の世界的なビジネスである。任意の特定の事例において考えられる最良の制御を取得することは、過去において必ずしも主要な重点事項ではなかったが、近年、産業用プロセスプラントなどの新しいプラントは、可制御性および最適性を考慮して設計されることが増えている。さらに、多くの既存のプロセスプラントは、この目的によって刷新されている。この刷新は、反応器、タンク、パイプなどの位置など、設置されるハードウェアの幾何学的配置の刷新だけでなく、プロセス制御を実施するのに使用される制御、監視、および測定要素の位置およびタイプの刷新も含む。天然資源のコストおよび排出物質に関連する実効コストの上昇に伴って、エネルギー消費もまた、プラント設計において重要な因子になってきた。
【０００４】
制御性能監視は、コントローラ再チューニングまたはモデルスケジューリングと組合されて、産業用プラントの効率を激的に改善し、それにより、毎年、数百万ドルを節約しうる。近年益々一般的になってきた別の技法は、異常状況監視および防止（ａｂｎｏｒｍａｌ  ｓｉｔｕａｔｉｏｎ  ｍｏｎｉｔｏｒｉｎｇ  ａｎｄ  ｐｒｅｖｅｎｔｉｏｎ)（ＡＳＰ）である。ある場合には、最新のデバイスおよび制御システム設計は、考えられる故障またはやがて起こる保守サイクルを予測することができる新規センサおよび組込み式統計的アルゴリズムを含む。これらの予測保守システムは、プラントオペレーションの稼働率を劇的に増加させ、コストがかかりかつ危険な予期しない運転停止の兆候を防止しうる。さらに、これらの技法の信頼性は、ここ１０年で著しく高まり、プラント効率の向上をもたらした。
【０００５】
これらの努力の一部として、一般にモデル予測制御(ｍｏｄｅｌ  ｐｒｅｄｉｃｔｉｖｅ  ｃｏｎｔｒｏｌ)（ＭＰＣ）技法と呼ばれるある種類の予測制御技法が、約２５年前に初めて開発され適用されて以来、産業界でかなり認められてきた。一般的に言えば、ＭＰＣは、ある種類の制御アルゴリズムを指し、その制御アルゴリズムは、プロセスモデル（通常、本来は線形である）を利用することによって、被操作変数プロファイルを計算して、将来の計画対象期間にわたって、制約を受ける線形または二次の開ループ性能目標を最適化する。その後、この開ループの最適操作変数プロファイルの最初の移動がプロセス内に実装され、その手法が、各制御間隔またはコントローラサイクルで繰返されて、プロセス制御を実施する。プロセス測定が使用されて、進行する制御中に最適化問題が更新される。この種類の制御アルゴリズムは、後退ホライズン制御または移動ホライズン制御とも呼ばれる。
【０００６】
しかし、その複雑さのために、ＭＰＣは、主に高度制御コミュニティにおいてその居場所を確保しており、したがって、ＭＰＣ構成は、通常、制御の専門家によって開発されコミッショニングされる。結果として、ＭＰＣ実施態様は、通常、実施態様の高いコストの見返りに大幅な利益増加を見込めるプロセスに適用される価値があったに過ぎない。この状況では、入力および出力の数の観点からのＭＰＣ適用のスケールは、通常、大きく、そのことが、ＭＰＣが、通常、単一変数ループ制御などの低レベルループ制御で使用されてこなかった１つの理由である。
【０００７】
より具体的には、制御システムのコミッショニングコストはかなりのものであり、特定のプロセスプラント内の全ての制御ループの構成に対して詳細に注意を払うことは、ほとんど現実的でない。結果として、全ての制御ループの約９０パーセントは、比例−積分−微分(ｐｒｏｐｏｒｔｉｏｎａｌ−ｉｎｔｅｇｒａｌ−ｄｅｒｉｖａｔｉｖｅ)（ＰＩＤ）コントローラまたは比例−積分(ｐｒｏｐｏｒｔｉｏｎａｌ−ｉｎｔｅｇｒａｌ)（ＰＩ）コントローラなどの従来の線形フィードバックコントローラによって制御される。さらに、ＭＰＣコントローラが使用される範囲において、これらのコントローラもまた、通常、本来は線形である。残念ながら、線形コントローラがプロセス制御産業において主に使用されるが、現実のプロセスの大部分は、非線形挙動を示す。この矛盾の結果として、モデル不一致が不可避であることになる。対処されないモデル不一致は、最適に満たない制御性能をもたらすだけでなく、制御性能および稼働率を改善するために開発された技術の利点の多くを帳消しにする。したがって、モデル不一致は、制御ハードウェアおよびソフトウェアの観点からコストがかかるだけでなく、他の関連するプラント技術のコスト節約も実際に減少させる。
【０００８】
一般的に言えば、産業用コントローラの性能は、種々の方法で測定が可能であり、異なるプロセスは、著しく異なる品質および安全性要件を有する可能性がある。プラントエンジニアは、実際に、オーバシュート、（プロセスを統合する）アレスト時間、振動特性、積分誤差、および積分絶対誤差(ｉｎｔｅｇｒａｔｅｄ  ａｂｓｏｌｕｔｅ  ｅｒｒｏｒ)（ＩＡＥ）などの１つまたは多くの異なる性能基準を使用して、特定の制御ループの性能を評価する可能性がある。しかし、ＰＩＤコントローラの場合、所与のコントローラについての測定される制御性能は、通常、設定点トラッキングと外乱排除挙動との間のトレードオフの結果であり、設定点トラッキングにおける良好な性能は、外乱排除における劣悪な性能をもたらし、また、その逆もある。たとえば、長い時定数（すなわち、遅れが支配的なプロセスに存在する時定数など）は、設定点トラッキング性能についてチューニングされているＰＩＤコントローラにおいて不十分な外乱排除性能をもたらすことがわかっている。ＰＩＤコントローラの開発に特有のこのトレードオフは、負荷外乱排除について理想的にチューニングされているＰＩＤコントローラが、比較的高い積分動作（すなわち、比較的小さな積分時定数）を有しなければならないこと、また、高い積分動作が、コントローラの設定点変化性能にとって有害であることによって説明されうる。より詳細には、設定点変化中、プロセス誤差（ｅ）は、たとえ被制御変数（ｙ）が設定点（ＳＰ）に近づいている間でも、一定の時間大きいままである。非常に大きな積分利得を用いると、積分項は、急速にかつ必要以上に増大し、したがって、設定点オーバシュートをもたらす。その結果、設定点変化性能を対象とするＰＩＤチューニングは、小さな積分動作および劣悪な負荷変化または外乱排除性能を有する。先に述べたように、全ての産業において依然として最も一般的なコントローラの選択肢である従来のＰＩＤ制御がこの問題にさらされるため、この問題の影響を減らそうと試みる中で、ＰＩＤコントローラに対する構造的変更および設定点フィルタリングを含む多くのアプローチが提案されてきた。
【０００９】
しかし、たとえこれらの変更を施したとしても、ＰＩＤコントローラのチューニングは、依然として、設定点トラッキング性能と外乱排除性能との間のトレードオフを正確に指定するという難題を呈する。異なるＰＩＤチューニング方法は、通常、他の方法に比べて、設定点トラッキング性能または外乱排除性能の一方に有利である。さらに、多くのモデルベースのチューニング技法は、ＰＩＤコントローラの内部パラメータを、制御されるプロセスについてのモデルの内部パラメータに一致させ、この同じトレードオフをもたらす。たとえば、極キャンセルおよびラムダチューニングなどのＰＩＤチューニング方法は、コントローラの積分時間をプロセスの支配的な時定数に一致させる。ここでは、コントローラ利得は、ある閉ループ時定数およびある設定点変化応答（たとえば、オーバシュート無し）を達成するように設定される。こうしたコントローラについての得られる積分動作は比較的小さいため、この技法は、非常に良好な設定点変化性能を示すが、不十分な外乱排除性能を示す。一方、ジグラー・ニコルス(Ｚｉｅｇｌｅｒ−Ｎｉｃｈｏｌｓ）法などの経験的ＰＩＤチューニング方法は、特に外乱排除性能のために設計されている。しかし、こうしたコントローラの積分動作は、プロセス変数を設定点に非常に急速に戻すことができるほどに十分強いため、設定点変化に応答して好ましくない設定点オーバシュートをもたらす。
【００１０】
ごく希に、ループの目的が、外乱排除だけ（たとえば、設定点変化が無いバッファタンクレベル）または設定点トラッキングだけ（たとえば、外乱が無いカスケード戦略における２次ループ）ということがある。こうした場合、チューニング構成を選択することが容易になる可能性があるが、上述したトレードオフは、完全に見落とされることが多く、代わりに、デフォルトのチューニング方法が通常選択され、任意の特定のプロセス状況においてチューニングを最適に満たないものにする。先に述べたように、ＰＩＤチューニングのこの制限を克服するために、設定点フィルタリングおよび２自由度構造を含む多数のチューニング方法が開発されてきたが、これらのチューニング方法は、通常、外乱排除性能に有利であり、したがって、設定点変化に対するコントローラの応答は、人工的に低下する。たとえば、設定点フィルタリングが選択される場合、オペレータによる設定点変更は、オーバシュートを防止するためにフィルタリングされ、設定点変化に対する遅い応答をもたらす。
【００１１】
いずれにしても、先に説明した性能トレードオフの直接の結果は、異なるチューニング方法が、異なる制御目標について選択されなければならないということであり、そのことが、それだけ多くのチューニング方法がＰＩＤチューニングについて提案されてきた理由の１つである。それだけ多くのＰＩＤチューニング技法が利用可能である別の理由は、異なるチューニング規則または方法が異なる入力変数を使用し、その一部だけが任意の特定のプロセスで容易に利用可能である場合があるからである。たとえば、多くのチューニング方法は、プロセスモデルに基づいてチューニングを計算するが、他の方法は、他のプロセス特性に基づいてチューニングを計算する。この後者の方法の例として、ジグラー・ニコルスチューニング規則は、一部の機械プロセスについて確定するのが容易である可能性があるが、多くの産業用化学プロセスにおいて実際に確定することができないクリティカルな利得およびクリティカルな周波数を使用する。
【００１２】
一方、ＭＰＣコントローラなどの予測コントローラは、設定点変化および負荷変化について同様に働くことができるべきである。その理由は、ＭＰＣコントローラの積分部分が、ＰＩＤコントローラについて観測されるのと同じトレードオフを受けないからである。より詳細には。誤差および移動ペナルティについての項が本来別個であるため、ＭＰＣコントローラは、一般に、設定点トラッキングと外乱排除との間の性能トレードオフを示さず、理論的には、ＭＰＣコントローラはＰＩＤコントローラに対する望ましい置換物となる。同様に、予測コントローラでは、被制御変数またはプロセス出力（ｙ）が設定点に近づいている間に、誤差（ｅ）は増加しない。実際に、予測コントローラにおいて、第１の実行サイクル後に、誤差は理論的にゼロであり、それにより、ＰＩＤ制御に特有の積分利得問題を低減するかまたはなくす。残念ながら、ＭＰＣコントローラの性能は、プロセスモデル不一致が存在するとき、すなわち、ＭＰＣコントローラによって使用されるプロセスモデルが、実際のプロセス特性に完全に一致しないときに、急速に低下する可能性がある。
【００１３】
さらに、ＰＩＤコントローラが外乱排除のために特にチューニングされるとき、産業用ＭＰＣコントローラの外乱排除性能は、ＰＩＤコントローラの性能より立ち遅れていることがわかっている。状態更新領域における最近のＭＰＣの改善は、ＭＰＣ技法で使用される観測器モデルが完全にわかっていると仮定する場合、ある程度この性能ギャップを埋めてきた。しかし、モデル不一致の存在下では、積分絶対誤差（ＩＡＥ）によって測定されるＰＩＤコントローラの制御性能は、考えられる最良のチューニングを施したＭＰＣコントローラの性能より依然として優れている。
【００１４】
それでも、ＭＰＣは、ＰＩＤコントローラの代替として使用される主要な制御技術の１つとして考えられてきた。その理由は、ＭＰＣコントローラが、予測制御性能の便益と少数の直感的なチューニングパラメータであるという便利さを組合せることができると考えられているからである。しかし、現在のところ、学会および制御システム販売業者が、近年、ＭＰＣ適用の範囲を広げるために多大の努力をしてきたにもかかわらず、ＭＰＣコントローラは、一般に、ＰＩＤ制御が十分に働かない、あるいは、実施または維持があまりに困難な産業環境において成功しただけであった。基本的に、ＰＩＤ制御が、依然としてかなりの数のプロセスについてＭＰＣより良好に働くため、また、ＰＩＤコントローラが、ＭＰＣタイプコントローラに比べて、安価でかつ速く導入できるため、ＭＰＣコントローラが実際にプロセスプラント構成内でＰＩＤコントローラと置換えられた割合はわずかである。
【００１５】
ＭＰＣコントローラが、ＰＩＤコントローラほど良好に機能しない傾向がある主要な理由の１つは、先に示したように、ＭＰＣコントローラが、ＰＩＤコントローラに比べて、プロセスモデル不一致の結果として性能劣化を受け易いことである（おそらく遅れが支配的なプロセスの場合を除く）。制御要素および送信機の線形化ならびにコントローラ利得スケジューリングの使用などの、プロセスにおける非線形性（または他の発生源）に起因するモデル不一致に対処するための実用的な方法が存在するが、モデル不一致に対処するための最も一般的な方法は、コントローラチューニングを実施することである。しかし、コントローラをチューニングするときの難しさのために、プロセスオペレータまたはエンジニアは、頻繁に、最悪の場合のシナリオ（たとえば、最も高いプロセス利得）についてコントローラをチューニングし、プロセスの他の領域について最適に満たないチューニングを受容する。そのため、産業用ＰＩＤまたはＭＰＣのデフォルトのチューニングパラメータは、通常、保存的であるため、種々のプロセス適用について最初はうまく働く可能性がある。しかし、コントローラは、通常、無期限にそのデフォルト設定のままにされ、総合的な性能低下をもたらす。たとえ事実はそうでなくても、同定誤差またはプラントドリフトに起因するモデル不一致は、チューニングによって対処することが難しい。実際に、このタイプのモデル不一致は、モデル同定を実装するために十分なプロセス摂動が必要とされるため、検出することが難しく、そのことは、通常、プロセス制御の目標（すなわち、プロセス外乱に応答してプロセスを定常状態に保つこと）に矛盾する。さらに、プロセス摂動を非測定外乱から識別することが難しい。
【００１６】
モデル不一致に応答してＭＰＣコントローラを「チューニングする」１つの方法は、プロセス変化を考慮してプロセスモデルを再生成させ、次に、この新しいモデルをＭＰＣコントローラ内で使用することである。残念ながら、まず第１に、モデルベースのコントローラで使用するための正確なプロセスモデルを開発することに対して多くの実際上の障害が存在する。たとえば、たとえ多くの産業用プロセスが最小フェーズであっても、大多数の閉ループは最小フェーズではない。むだ時間としても知られる時間遅延および高次遅れは、正確なプロセスモデルの開発を著しく複雑にする右手極を生成する。ほとんどの事例では、閉ループのむだ時間は、パイプ内の材料の輸送遅延およびコンピュータ制御システムでは不可避である離散的なサンプリングメカニズムによって生成され、一方、高次遅れは、通常、測定デバイスおよび制御デバイスのフィルタ時定数の結果である。産業用プラント用のプロセスモデルを定義するときにしばしば見出される他の難題は、弁およびパッキングの機械的挙動によって生成される分解能および不感帯を含む。
【００１７】
これらのまた他の因子は、コントローラ用のプロセスモデルを開発するときに、産業用プラントの制御エンジニアに対して多くの難題を呈する。たとえば、あるプロセスが、ある利得と時定数を有する１次フィルタのように働くことが予想される場合でも、制御エンジニアは、管形状により、送信機からのさらなる時定数、制御要素コンピュータサンプリング、およびジッタを考慮しなければならない。特に、いずれのデジタル制御システムも、中央処理ユニット（ＣＰＵ）および通信制約を有しており、そのことは、十分なオーバサンプリングが、プラント内の全てのタイプのループについて実用的でないことを意味する。たとえば、最大時定数とむだ時間を足した値の３倍またはむだ時間の５倍（いずれか大きい方）のサンプリングレートが、合理的に十分であると考えられることが多いが、このサンプリングレートは、通常、プラント内の多くの制御ループ（流量ループおよび圧力ループなど）について達成できない。結果として、エンジニアは、応答の一部について利用可能である場合がある第１の原理モデルにのみ依存することができない。さらに、プロセスモデル同定は、理想的には、統合された自動ツールによって実施される。しかし、プロセスモデルを同定するために現実のプラントで通常使用される第１の原理モデリングおよび普遍的な第３者機関の解決策は、フィールド機器に直接接続することによって、プロセスモデルを同定する。したがって、これらの解決策は、ループ性能に対するコンピュータ制御システム自体の影響を考慮しない（または、せいぜい近似するだけである）ため、統合されない。これらの因子は全て、プロセスと、プロセスを制御するために開発されるプロセスモデルとの間に著しい不一致をもたらす可能性があり、モデルベース制御およびチューニング方法を、実際の状況では好ましくないものにする。
【発明の概要】
【発明が解決しようとする課題】
【００１８】
ＭＰＣコントローラのフィードバック制御能力の欠点が、特にプロセスモデル不一致の存在下での、ＰＩＤコントローラとＭＰＣコントローラとの間の性能ギャップの１つの理由であることが特定されてきた。この事実を認識して、本明細書で述べるＭＰＣ適応およびチューニング技法は、ＭＰＣタイプコントローラにおいて今日一般に使用されている方法と比べて、フィードバック制御性能をより適切に統合し、プロセスモデル不一致の存在下で、従来のＭＰＣ技法に比べて良好に働くＭＰＣ適応／チューニング技法をもたらす。
【課題を解決するための手段】
【００１９】
特に、ＭＰＣコントローラ性能は、コントローラ適応／チューニングユニットをＭＰＣコントローラに追加することによって高められ、その適応／チューニングユニットは、オンラインプロセス制御中にＭＰＣコントローラ内で使用するための、最良のまたは最適な組のプロセスモデル、ＭＰＣ設計、および／またはチューニングパラメータを確定して、特定の量のモデル不一致またはある範囲のモデル不一致の存在下でＭＰＣコントローラの外乱排除性能が改善される。より具体的には、適応／チューニングユニットは、以前に確定されたプロセスモデル、および、既知のまたは予想されるプロセスモデル不一致あるいは既知のまたは予想されるプロセスモデル不一致範囲のいずれかに基づいて、たとえば、ＭＰＣ形態、ＭＰＣコントローラおよびカルマンフィルタなどの観測器のいずれかまたは両方についてのペナルティ因子、およびＭＰＣコントローラで使用するためのコントローラモデルを含む、１つまたは複数のＭＰＣコントローラチューニングおよび設計パラメータを確定する最適化ルーチンを実施する。この適応／チューニングユニットが使用されて、ＭＰＣコントローラが周期的にまたは連続して適応され、かつ／または、チューニングされ、それにより、最初のプロセスモデルを再生成する必要が全くない状態で、既知のまたは予想されるプロセスモデル不一致またはモデル不一致範囲の存在下で、最良の総合性能を有するＭＰＣコントローラが開発される。そのため、ＭＰＣコントローラを自動的に適応させ、かつ／または、チューニングするこの方法は、モデル不一致またはモデル不一致範囲に基づいて最適チューニングパラメータを確定して、ＭＰＣコントローラが、モデル不一致の存在下で最適に動作することを可能にし、また、閉ループ適応制御を実施する際に有利に使用することができ、多くの事例においてＰＩＤ制御技法と比べてＭＰＣコントローラをよりよい選択肢にする。
【００２０】
さらに、たとえばＭＰＣコントローラユニットで使用される可能性がある方法は、制御誤差および／または予測誤差の自己相関関数を使用して、ＭＰＣコントローラで目下使用されているプロセスモデルと実際のプロセスとの間のモデル不一致の推定マグニチュードまたはモデル不一致の変化を確定する。この推定値が使用されて、ＭＰＣコントローラ設計およびチューニングパラメータを更新するための新しい適応／チューニングサイクルが始動され、それにより、新しい量のモデル不一致の存在下で良好な制御が実施される。モデル不一致を検出するこの方法は、特にプロセス状態変化がプロセスモデルの変化を伴うときに、方法がプロセス状態変化を受け易くなるように、コントローラがチューニングされるときを判定するのに使用されてもよく、したがって、目下チューニングされているＭＰＣコントローラがうまく扱うことができない可能性があるプロセス変化が発生する前に、ＭＰＣコントローラを修正するかまたは再チューニングするのに使用されうる。
【図面の簡単な説明】
【００２１】
【図１】ＭＰＣコントローラを実装する高度コントローラ機能ブロックを有する制御モジュールを含むプロセス制御システムのブロック図である。
【図２】典型的なＭＰＣコントローラのブロック図である。
【図３】プロセスプラントを制御するために接続された、ＭＰＣコントローラおよび状態観測器を有する、典型的なＭＰＣコントローラユニットのブロック図である。
【図４】プロセスモデルおよび１つまたは複数のプロセスモデルパラメータにおけるモデル不一致に基づいてＭＰＣ設計およびチューニングパラメータを確定するＭＰＣコントローラユニットに結合される、適応／チューニングブロックの略図である。
【図５】プロセスモデルのプロセス利得パラメータにおけるモデル不一致の存在下で最適チューニングを確定することに関連する、最小積分絶対誤差の例示的なプロットである。
【図６】プロセスモデルの１次時定数におけるモデル不一致の存在下で最適チューニングを確定することに関連する、取得可能な最小積分絶対誤差の例示的なプロットである。
【図７】プロセスモデルの２次時定数におけるモデル不一致の存在下で最適チューニングを確定することに関連する、取得可能な最小積分絶対誤差の例示的なプロットである。
【図８】汎用カルマンフィルタ状態更新を用いた、ＭＰＣコントローラの２つのプロセスモデルパラメータにおけるモデル不一致についての、図４の適応／チューニングブロックによって計算された、考えられる最良の積分絶対誤差の３次元表面プロットである。
【図９】簡易カルマンフィルタ状態更新を用いた、ＭＰＣコントローラの２つのプロセスモデルパラメータにおけるモデル不一致についての、図４の適応／チューニングブロックによって計算された、考えられる最良の積分絶対誤差の３次元表面プロットである。
【図１０】２次元部分空間内のモデル不一致の範囲の図である。
【図１１】２次元モデル不一致範囲部分空間を画定するための、仮定されたプロセスモデル中心点において、図８の３次元プロット内に重ねられた図１０の２次元モデルの不一致部分空間の図である。
【図１２】モデル不一致範囲部分空間に関連する、新しい一組のコントローラモデルパラメータならびに新しい一組の最適ＭＰＣチューニングおよび設計パラメータを確定するために、図１１の３次元プロット内の異なる位置に、図１１の２次元モデル不一致範囲部分空間を移動させる方法の図である。
【図１３】プロセスまたはプラントモデルおよびモデル不一致範囲に基づいてＭＰＣコントローラを最適化する適応／チューニングブロックのブロック図である。
【図１４】開ループチューニングを使用した、ＭＰＣ制御への図１３の適応／チューニングブロックの適用を示すブロック図である。
【図１５】プロセスに結合する特性推定器ブロックを使用する閉ループチューニング構成における、ＭＰＣ制御への図１３の適応／チューニングブロックの適用を示すブロック図である。
【図１６】ＭＰＣコントローラに結合されるイノベーション解析ブロックを使用する閉ループチューニング構成における、ＭＰＣ制御への図１３の適応／チューニングブロックの適用を示すブロック図である。
【図１７】本明細書で述べるＭＰＣコントローラ適応／チューニング方法の実験的試験について使用される２成分系蒸留塔のＰ＆ＩＤを示す図である。
【図１８】第１の蒸気レートにおける、図１７の２成分系蒸留塔内のレベルを制御するときの、異なる形でチューニングされた３つのＭＰＣコントローラおよびＰＩＤコントローラの性能のプロットを示す図である。
【図１９】第１の蒸気レートから第２の蒸気レートへの蒸気流量の人工的な非測定外乱の導入後の、図１７の２成分系蒸留塔内のレベルを制御するときの、異なる形でチューニングされた３つのＭＰＣコントローラおよびＰＩＤコントローラの性能のプロットを示す図である。
【図２０】第２の蒸気レートにおける、図１７の２成分系蒸留塔内のレベルを制御するときの、異なる形でチューニングされた２つのＭＰＣコントローラおよびＰＩＤコントローラの性能のプロットを示す図である。
【図２１】図１８のプロットに関連する第１の蒸気レートで動作するときの、３つの異なるＭＰＣチューニング設定におけるＭＰＣコントローラ内の予測誤差の自己相関のプロットを示す図である。
【図２２】図２０のプロットに関連する第２の蒸気レートで動作するときの、３つの異なるＭＰＣチューニング設定のうちの２つについての、ＭＰＣコントローラ内の予測誤差の自己相関のプロットを示す図である。
【図２３】図１９のプロットに関連する非測定外乱の排除中に動作するときの、３つの異なるＭＰＣチューニング設定についての、ＭＰＣコントローラ内の予測誤差の自己相関のプロットを示す図である。
【図２４】図１８のプロットに関連する第１の蒸気レート中に動作するときの、３つの異なるＭＰＣチューニング設定のＭＰＣコントローラ内の（またＰＩＤコントローラの）制御誤差の自己相関のプロットを示す図である。
【図２５】第１の蒸気レートから第２の蒸気レートへ蒸気流量が変化することに関連する非測定外乱の排除中に動作するときの、３つの異なるＭＰＣチューニング設定のＭＰＣコントローラ内の（またＰＩＤコントローラの）制御誤差の自己相関のプロットを示す図である。
【図２６】ＭＰＣコントローラの適応チューニングを始動するためにプロセス推定およびイノベーション解析推定の一方または両方に依存する推定器を含む閉ループチューニング構成内での、ＭＰＣ制御への図１３の適応／チューニングブロックの適用を示すブロック図である。
【発明を実施するための形態】
【００２２】
一般的に言えば、任意の所望のまたは適切なコントローラ設定において使用するための、種々の異なるタイプのモデル予測制御（ＭＰＣ）コントローラに適用される可能性がある新しいコントローラ適応、設計、およびチューニング方法が、本明細書で説明される。しかし、この新しいコントローラ適応、設計、およびチューニング方法は、薬物および化学製造プラント、精製プラントなどのような産業用プロセスプラントなどのプロセスプラントにおいて使用される制御システムにおいて特に有用である。さらに、新しいＭＰＣコントローラ適応、設計、およびチューニング技法は、本明細書では分散プロセス制御ネットワークの一部として実施されるものとして述べられるが、たとえば、集中制御システムの一部、プログラマブルロジック制御(programmable logic control)（ＰＬＣ）システムの一部、独立型制御システムの一部などを含む、他のタイプの制御環境において実施されうる。
【００２３】
ここで図１を参照すると、本明細書で述べるＭＰＣコントローラ適応、設計、およびチューニング技法が実施されてもよいプロセス制御システム１０は、データヒストリアン１２、および、それぞれがディスプレイスクリーン１４を有する１つまたは複数のホストワークステーションまたはコンピュータ１３（任意のタイプのパーソナルコンピュータ、ワークステーションなどであってよい）に通信可能に接続されるプロセスコントローラ１１を含む。コントローラ１１はまた、入力／出力（Ｉ／Ｏ）カード２６および２８を介してフィールドデバイス１５〜２２に接続される。データヒストリアン１２は、任意の所望のタイプのメモリならびにデータを格納するための任意の所望のまたは既知のソフトウェア、ハードウェア、またはファームウェアを有する任意の所望のタイプのデータ収集ユニットであってよく、また、（図１に示されるように）ワークステーション１３から分離するかまたはワークステーション１３のうちの１つの一部であってもよい。単に例として挙げると、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔ社によって販売されるＤｅｌｔａＶ（商標）であってよいコントローラ１１は、たとえばイーサネット（登録商標）接続または任意の他の所望の通信ネットワーク２９を介してホストコンピュータ１３およびデータヒストリアン１２に通信可能に接続される。通信ネットワーク２９は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、電気通信ネットワークなどの形態であってよく、ハードウェアまたはワイヤレス技術を使用して実装されてもよい。コントローラ１１は、たとえば標準的な４〜２０ｍＡデバイス、および／または、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスプロトコル（Ｆｉｅｌｄｂｕｓ）、ＨＡＲＴ（登録商標）プロトコル、ＷｉｒｅｌｅｓｓＨＡＲＴ（商標）プロトコルなどのような任意のスマート通信プロトコルに関連する任意の所望のハードウェアおよびソフトウェアを使用して、フィールドデバイス１５〜２２に通信可能に接続される。
【００２４】
フィールドデバイス１５〜２２は、センサ、弁、送信機、ポジショナなどのような任意のタイプのデバイスであってよく、一方、Ｉ／Ｏカード２６および２８は、任意の所望の通信またはコントローラプロトコルに適合する任意のタイプのＩ／Ｏデバイスであってよい。図１に示す実施形態では、フィールドデバイス１５〜１８は、アナログラインまたはアナログ／デジタルが組合わされたラインを通じてＩ／Ｏカード２６と通信する標準的な４〜２０ｍＡデバイスまたはＨＡＲＴ（登録商標）デバイスであり、一方、フィールドデバイス１９〜２２は、フィールドバスプロトコル通信を使用してデジタルバスを通じてＩ／Ｏカード２８と通信するフィールドバスフィールドデバイスなどのスマートデバイスである。もちろん、フィールドデバイス１５〜２２は、現在存在する、または、将来開発される任意の規格またはプロトコルを含む、任意の他の所望の規格（複数可）またはプロトコルに適合しうる。同様に、フィールドデバイス１５〜２２間の通信は、所望である場合、ワイヤード技術、ワイヤレス技術、または、ワイヤードおよびワイヤレス技術の組合せを使用して、実装されうる。
【００２５】
プラント１０内の多くの分散コントローラのうちの１つであってよいコントローラ１１は、内部に少なくとも１つのプロセッサを有し、少なくとも１つのプロセッサは、プロセッサ内に格納されるかまたはその他の方法でプロセッサに関連する、制御ループを含んでもよい１つまたは複数のプロセス制御ルーチンを実装するかまたは監督する。コントローラ１１はまた、デバイス１５〜２２、ホストコンピュータ１３、およびデータヒストリアン１２と通信して、任意の所望の方法でプロセスを制御する。本明細書で述べる任意の制御ルーチンまたは要素は、所望される場合、異なるコントローラまたは他のデバイスによって実装されるかまたは実行される制御ルーチンまたは要素の一部を有してもよいことが留意されるべきである。同様に、プロセス制御システム１０内に実装される本明細書で述べる制御ルーチンまたは要素は、ソフトウェア、ファームウェア、ハードウェアなどを含む任意の形態をとってもよい。この説明のために、プロセス制御要素は、たとえば、コンピュータデバイスのＣＰＵなどのプロセッサによって実行可能であるように、任意のコンピュータ読取り可能媒体上に格納されたルーチン、ブロック、またはモジュールを含む、プロセス制御システムの任意の一部または部分でありうる。サブルーチン、サブルーチンの一部（コードのラインなど）などのような、制御プロシージャのモジュールまたは任意の一部であってよい制御ルーチンは、ラダーロジック、順次機能チャート、機能ブロック図、オブジェクト指向プログラミングあるいは任意の他のソフトウェアプログラミング言語または設計パラダイムなどを使用して、任意の所望のソフトウェア形式で実装されてもよい。同様に、制御ルーチンは、たとえば、１つまたは複数のＥＰＲＯＭ、ＥＥＰＲＯＭ、特定用途向け集積回路（ＡＳＩＣ）、あるいは任意の他のハードウェアまたはファームウェア要素内にハードコード化されてもよい。さらに、制御ルーチンは、グラフィカル設計ツール、あるいは、任意の他のタイプのソフトウェア、ハードウェア、またはファームウェアのプログラミングまたは設計ツールを含む任意の設計ツールを使用して設計されてもよい。そのため、コントローラ１１は、一般に、任意の所望の方法で制御戦略または制御ルーチンを実装するよう構成されてもよい。
【００２６】
一実施形態では、コントローラ１１は、機能ブロックと一般に呼ばれるものを使用して制御戦略を実装し、各機能ブロックは総合制御ルーチンの一部またはそのオブジェクトであり、（リンクと呼ぶ通信を介して）他の機能ブロックと連携して動作して、プロセス制御システム１０内にプロセス制御ループを実装する。機能ブロックは、通常、送信機、センサ、または他のプロセスパラメータ測定デバイスに関連するような入力機能、ＰＩＤ、ＭＰＣ、ファジーロジックなどの制御を実施する制御ルーチンに関連するようなコンロール機能、および弁などのあるデバイスの動作を制御する出力機能のいずれか１つを実施して、プロセス制御システム１０内のある物理的機能を実施する。もちろん、ハイブリッドおよび他のタイプの機能ブロックが存在する。機能ブロックは、コントローラ１１内に格納され、コントローラ１１によって実行されてもよく（これは、通常、これらの機能ブロックが標準的な４〜２０ｍＡデバイス、および、ＨＡＲＴ（登録商標）デバイスなどのあるタイプのスマートフィールドデバイスのために使用されるかまたはそれに関連するときに当てはまる）、または、フィールドデバイス自体によって格納され、実装されてもよい（これは、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスデバイスの場合に当てはまる）。さらに、本明細書で述べるコントローラ適応およびチューニングルーチンまたは技法などのコントローラルーチンを実装する機能ブロックは、ホストワークステーションまたはコンピュータ１３内でまたは任意の他のコンピュータデバイス内で全体的にまたは部分的に実装されてもよい。制御システムの説明は、オブジェクト指向プログラミングパラダイムを使用する機能ブロック制御戦略を使用して本明細書で提供されるが、制御戦略あるいは制御ループまたはモジュールはまた、他の慣行を使用して、また、任意の所望のプログラミング言語またはパラダイムを使用して実装されるかまたは設計されうる。
【００２７】
図１の拡大ブロック３０によって示すように、コントローラ１１は、ルーチン３２および３４として示すいくつかの単一ループ制御ルーチンを含んでもよく、制御ループ３６として示す１つまたは複数の高度制御ループを実装してもよい。こうしたループのそれぞれは、通常、制御モジュールと呼ばれる。単一ループ制御ルーチン３２および３４は、単一入力／単一出力ファジーロジック制御ブロックおよび単一入力／単一出力ＰＩＤ制御ブロックを使用して単一ループ制御を実施するものとして示され、それらのブロックは、弁などのプロセス制御デバイス、温度および圧力送信機などの測定デバイス、またはプロセス制御システム１０内の任意の他のデバイスに関連してもよい、適切なアナログ入力（ＡＩ）およびアナログ出力（ＡＯ）機能ブロックにそれぞれ接続される。高度制御ループ３６は、多数のＡＩ機能ブロックに通信可能に接続される入力および多数のＡＯ機能ブロックに通信可能に接続される出力を有する高度制御ブロック３８を含むものとして示されるが、高度制御ブロック３８の入力および出力は、任意の他の所望の機能ブロックまたは制御要素に通信可能に接続して、他のタイプの入力を受信し、他のタイプの制御出力を提供してもよい。さらに、高度制御ブロック３８は、多変数（たとえば、複数入力／複数出力）制御を実装するものとして示されるが、単一変数（たとえば、単一入力／単一出力）制御を実装するのに使用されうる。さらに述べるように、高度制御ブロック３８は、モデル予測制御（ＭＰＣ）ルーチンを、ＭＰＣコントローラルーチンにコントローラ設計およびチューニングパラメータを提供するコントローラ適応／チューニングブロックと統合して、プロセスまたはプロセスのある部分の制御を実施する制御ブロックであってよい。高度制御ブロック３８は、一般にモデル予測制御（ＭＰＣ）ブロックを含むものとして本明細書で述べられることになるが、実際には、多くの異なるタイプのＭＰＣ技法のうちの任意の技法を実装する可能性があり、本明細書でより詳細に述べるように、ある場合には、これらの技法間での切換えさえありうる。高度制御ブロック３８またはそのコンポーネントを含む、図１に示す制御モジュールまたはこれらのモジュールのサブコンポーネントは、コントローラ１１によって実行されうる、または別法として、ワークステーション１３の１つまたはさらにフィールドデバイス１９〜２２の１つなどの、任意の他の処理デバイス内に配置され、それにより実行されうることが理解されるであろう。たとえば、一実施形態では、ＭＰＣコントローラ適応／チューニングブロック４２は、コンピュータ１３に格納され、そこで実行されて、コントローラ１１によって実行される高度制御ブロック３８内に格納されたＭＰＣコントローラチューニングパラメータ、設計パラメータ、およびプロセスモデルパラメータをＭＰＣコントローラに提供してもよい。
【００２８】
図１に示すように、ワークステーション１３のうちの１つは、高度制御ブロック３８を生成し、ダウンロードし、実装するのに使用される高度制御ブロック生成ルーチン４４を含む。高度制御ブロック生成ルーチン４４は、ワークステーション１３内のメモリ内に格納され、ワークステーション１３内のプロセッサによって実行されてもよいが、このルーチン（またはこのルーチンの任意の一部）は、付加的にまたは別法として、所望される場合、プロセス制御システム１０内の任意の他のデバイス内に格納され、それによって実行されてもよい。さらに、ユーザインタフェースルーチン４６は、プロセスオペレータ、制御エンジニアなどのようなユーザが、高度制御ブロック３８に関連するチューニング、設計、または制御パラメータを指定するかまたは変更すること、設定点を変更すること、適応／チューニングブロック４２によって実施される適応／チューニングプロシージャを始動させること、新しいモデルパラメータを提供すること、モデル不一致値またはモデル不一致範囲値を提供することなどを可能にしてもよい。
【００２９】
背景として、ＭＰＣ技法の多くの産業用実施態様は、モデルアルゴリズム制御（ｍｏｄｅｌ  ａｌｇｏｒｉｔｈｍｉｃ  ｃｏｎｔｒｏｌ）（ＭＡＣ）技法および動的マトリクス制御（ｄｙｎａｍｉｃ  ｍａｔｒｉｘ  ｃｏｎｔｒｏｌ）（ＤＭＣ）技法を含む。ＤＭＣ技術は、プロセスの線形ステップ応答またはインパルス応答モデルを使用し、この場合、最適制御経路は、オフラインで予め計算され、大きなマトリクス内に格納される。その後、このコントローラマトリクスは、重ね合わせによる被操作変数のオンライン移動を計算するのに使用される。結果として、計算コストは、最適方程式をオンラインで解くＭＰＣ法と比較して劇的に減少する。ＤＭＣ技術の別の利点は、ＤＭＣ技術で使用される状態変数が、プロセスモデルから直感的に計算され、明示的な将来出力予測を示し、そのことが、制約に関連する変数などのプロセス出力の将来予測が、容易に利用可能でありまたユーザに表示されうることを意味することである。
【００３０】
他のＭＰＣ実施態様は、線形目標関数を使用し、かつ制約を明示的に組込むＩＤＣＯＭおよび線形動的マトリクス制御（ｌｉｎｅａｒ  ｄｙｎａｍｉｃ  ｍａｔｒｉｘ  ｃｏｎｔｒｏｌ）（ＬＤＭＣ）、２次性能関数を組込むＤＭＣの拡張であり、かつ制約の協調が明示されている２次動的マトリクス制御（ＱＤＭＣ）、最初の実施態様の反復的ソリューション技法を置換えるために２次プログラミングアルゴリズムを使用するＩＤＣＯＭの拡張であるＩＤＣＯＭ−Ｍ、および、状態空間実施態様であるシェル多変数最適化制御（Ｓｈｅｌｌ  ｍｕｌｔｉｖａｒｉａｂｌｅ  ｏｐｔｉｍｉｚｉｎｇ  ｃｏｎｔｒｏｌ）（ＳＭＯＣ）を含む。別の種類のＭＰＣ技法は、良好なＭＰＣ性能を提供するために状態観測器を使用する。
【００３１】
図２は、多変数プロセス制御を実施するために、図１の高度制御ブロック３８によって実装されてもよい（プロセス５０に通信可能に結合される）多変数ＭＰＣコントローラユニット５２の一実施形態の詳細ブロック図を示す。この場合、ＭＰＣコントローラ５２ユニットは、ＤＭＣ制御技法を実装するのに使用されてもよい。しかし、ここでの説明は、ＭＰＣ制御について一般的に理解するための良好な基礎を提供するものとする。図２に示すように、高度制御ブロック３８は、一組の被操作変数（ＭＶ）を生成し、一組の被操作変数（ＭＶ）は他の機能ブロックに提供され、他の機能ブロックはプロセス５０の入力を制御するために接続される。図２に示すように、高度制御ブロック３８は、通常、出力と同じ数の入力を有する任意の標準的なＭＰＣルーチンまたはプロシージャを含むかまたは実装してよいＭＰＣコントローラブロック５２を含むが、その要件は必要ではない。ＭＰＣコントローラ５２は、入力として、プロセス５０内で測定される値のベクトルを通常構成する一組のＮ個の被制御変数（ＣＶ）および補助変数（ＡＶ）、将来のある時点でプロセス５０に提供される既知のまたは予想される変化または外乱である一組の外乱変数（ＤＶ）、ならびに、たとえば最適化器（図示せず）、ユーザ、または任意の他の供給源から提供される一組の定常状態目標制御および補助変数（ＣＶＴ）および（ＡＶＴ）を受信する。ＭＰＣコントローラ５２は、これらの入力を使用して、制御信号の形態で一組のＭ個の被操作変数（ＭＶ）信号を生成し、被操作変数信号ＭＶを、弁作動器、バーナ、ポンプなどであってよいプロセス５０の制御入力に送出する。
【００３２】
さらに、ＭＰＣコントローラ５２は、制御ホライズンにおいて、それぞれ、被操作変数（ＭＶ）、制御変数（ＣＶ）、および補助変数（ＡＶ）の予測値を示す、一組の予測定常状態被操作変数（ＭＶＳＳ）と共に一組の予測定常状態制御変数（ＣＶＳＳ）および補助変数（ＡＶＳＳ）を計算し生成する。これらの変数は、１つまたは複数のＭＰＣ最適化ルーチン（複数可）で使用されて、目標制御および補助変数ＣＶＴおよびＡＶＴを生成し、それにより、プロセス５０を最適動作状態に駆動してもよい。
【００３３】
どのように生成されても、目標制御および補助変数ＣＶＴおよびＡＶＴは、ＭＰＣコントローラ５２への入力として提供され、ＭＰＣコントローラ５２は、先に述べたように、これらの目標値ＣＶＴおよびＡＶＴを使用して、（制御ホライズンにわたって）新しい組の定常状態被操作変数ＭＶＳＳを確定し、新しい一組の定常状態被操作変数ＭＶＳＳは、制御ホライズンの終わりに、目下の制御および被操作変数ＣＶおよびＡＶを、目標値ＣＶＴおよびＡＶＴに駆動する。もちろん、知られているように、ＭＰＣコントローラ５２は、予測定常状態被操作変数ＭＶＳＳ用の定常状態値に達しようと試みて、被操作変数を段階的に変化させ、それにより、理論的には、プロセスが、目標制御および補助変数ＣＶＴおよびＡＶＴを取得することになる。ＭＰＣコントローラ５２は、各プロセススキャン中に上述したように動作するため、被操作変数の目標値が、スキャンごとに変わる可能性があり、その結果、ＭＰＣコントローラ５２は、特にプロセス５０内の雑音、予想しない外乱、変化などの存在下では、実際に、これらの組の目標被操作変数ＭＶの任意の特定の変数に決して達しない可能性がある。
【００３４】
知られているように、ＭＰＣコントローラ５２は、種々の異なるＭＰＣ制御技法のうちの任意の技法で使用される任意のタイプのモデルであってよい、制御予測プロセスモデル７０（「コントローラモデル」とも呼ばれる）を含む。たとえば、モデル７０は、Ｎ×（Ｍ＋Ｄ）ステップ応答マトリクスであってよい（ここで、Ｎは制御変数ＣＶの数と補助変数ＡＶの数を足した値であり、Ｍは被操作変数ＭＶの数であり、Ｄは外乱変数ＤＶの数である）。しかし、モデル７０は、１次、２次、３次などの予測モデルまたは第１の原理モデル、状態空間モデル、コンボリューションプロセスモデル、または任意の他のタイプのプロセスモデルであってよい。コントローラモデル７０は、多大な基本的モデリングを行う努力を必要としない時系列解析技法を使用するプロセスアップセット試験から確定されてもよく、または、一組または複数組の線形モデルまたは非線形モデルを重ね合わせる技法を含む任意の他の既知のプロセスモデリング技法を使用して確定されてもよい。いずれにしても、制御予測プロセスモデル７０は、制御および補助変数ＣＶおよびＡＶのそれぞれについて以前に計算された予測を規定する出力７２を生成し、ベクトル加算器７４は、目下の時間についてのこれらの予測値を、制御および補助変数ＣＶおよびＡＶの実際の測定値から減算して、入力７６上に誤差または補正ベクトルを生成する。この誤差は、通常、予測誤差と呼ばれる。
【００３５】
制御予測プロセスモデル７０は、その後、制御予測プロセスモデル７０の他の入力に提供される外乱および被操作変数に基づいて、制御ホライズンにわたって制御変数および補助変数ＣＶおよびＭＶのそれぞれについて将来制御パラメータを予測する。制御予測プロセスモデル７０はまた、先に説明した制御変数および補助変数の予測定常状態値ＣＶＳＳおよびＡＶＳＳを生成する。
【００３６】
制御目標ブロック８０は、ブロック３８のために以前に確立された軌跡フィルタ８２を使用して、目標変換ブロック５５によって、制御目標ブロック８０に提供されるＮ個の目標制御および補助変数ＣＶＴおよびＡＶＴのそれぞれについて制御目標ベクトルを確定する。特に、軌跡フィルタ８２は、制御および補助変数がその目標値に所定期間にわたって（ｏｖｅｒ  ｔｉｍｅ）駆動される方法を規定する単位ベクトルを提供する。制御目標ブロック８０は、この単位ベクトルならびに目標変数ＣＶＴおよびＡＶＴを使用して、制御ホライズン時間によって規定される期間にわたって、目標変数ＣＶＴおよびＡＶＴの変化を規定する制御および補助変数のそれぞれについて動的制御目標ベクトルを生成する。ベクトル加算器８４は、その後、制御および補助変数ＣＶおよびＡＶのそれぞれについての将来制御パラメータベクトルを、動的制御ベクトルから減算して、制御および補助変数ＣＶおよびＡＶのそれぞれについて将来誤差ベクトルを規定する。制御および補助変数ＣＶおよびＡＶのそれぞれについての将来誤差ベクトルは、その後、ＭＰＣアルゴリズム８６に提供され、ＭＰＣアルゴリズム８６は、制御ホライズンにわたって、たとえば最小２乗誤差または積分絶対誤差（ｉｎｔｅｇｒａｔｅｄ  ａｂｓｏｌｕｔｅ  ｅｒｒｏｒ）（ＩＡＥ）を最小にする被操作変数ＭＶステップを選択するよう働く。一部の実施形態では、ＭＰＣアルゴリズム８６は、ＭＰＣコントローラ５２へのＮ個の制御および補助変数と、所望である場合、ＭＰＣコントローラ５２によって出力されるＭ個の被操作変数との間の関係から生成されるＭ×Ｎの制御マトリクスを使用してもよい。より詳細には、ＭＰＣアルゴリズム８６は、２つの主要な目標を有する。第１に、ＭＰＣアルゴリズム８６は、オペレーション上の制約内で、最小のＭＶの移動を有するＣＶ制御誤差を最小にしようとし、第２に、最適定常状態のＭＶ値および最適定常状態のＭＶ値から直接計算される目標のＣＶ値を達成しようとする。
【００３７】
典型的なモデル予測コントローラについての状態方程式は、
【００３８】
【数１】
0005504175.tif 000002
【００３９】
として表現されてもよい。式中、Ｑ、Ｒ、Ｓは、誤差、コントローラ移動、および増分移動についてのペナルティ重みであり、ｘｋはモデル状態マトリクスであり、ｙｋはプロセス出力であり、ｕｋはコントローラ出力である。Ｑ、Ｒ、Ｓのペナルティベクトルは、本来別個であるため、ＭＰＣコントローラは、一般に、設定点トラッキングと外乱排除との間の性能トレードオフを有さない。しかし、ＭＰＣコントローラは、依然として、特定の多変数プロセス制御目標についてチューニングされる必要がある。プロセスモデルは、ＭＰＣコントローラの内部構造（たとえば、状態空間ＭＰＣ定式を有するプロセス状態空間）に常に一致するが、さらなるチューニングパラメータが、設定点変化と外乱排除に関する挙動を確定する。
【００４０】
特に、ペナルティベクトルが使用されて、エンドユーザによって定義された特定のプロセスについての制御目標に従って１つの変数を他の変数に対して強調することができる。モデル不一致が推測される場合、ペナルティベクトルＱおよびＲはまた、コントローラをより頑健にする（すなわち、コントローラをデチューニングする）ために使用されうる。しかし、ファンネル制御または参照軌跡などの方法は、誤差ベクトルを有効にフィルタリングするため、より明白な影響を頑健性に及ぼす。このことは、これらの方法が、産業用プロセス適用においてエンジニアおよびオペレータがモデル予測コントローラをチューニングするための好ましい手段である理由である。モデル予測コントローラは、本来、プロセスに「一致する」ため、制御移動は、特定のプロセスモデルについて常に最適である。このことは、コントローラは（最終制御要素に関する物理的制限に従って）デチューニングされるだけであり、決して非常に急激にチューニングされないことを意味する。たとえば、弁開放速度は無限ではありえず、したがって、Ｒの値は、現実には決してゼロでありえない。ＰＩＤコントローラが外乱排除について特にチューニングされているとき、産業用ＭＰＣコントローラの外乱排除は、ＰＩＤコントローラの外乱排除より立ち遅れることがわかっている。状態更新の領域における最近のＭＰＣの改善は、ＭＰＣルーチンで使用される観測器モデルが完全にわかっていると仮定する場合、その性能ギャップを埋めてきた。しかし、モデル不一致の存在下で、（たとえばＩＡＥで測定される）ＰＩＤコントローラの制御性能は、考えられる最良のチューニングを施したＭＰＣコントローラの性能より依然として優れている。それでも、観測器を有するＭＰＣ技法は、フィードバック制御性能を改善するために使用され、通常、この点でＤＭＣ技法よりうまく働きうる。
【００４１】
観測器ベースＭＰＣコントローラシステム８８の実施例は図３に示される。ここで、ＭＰＣコントローラシステム８８は、ＭＰＣコントローラ９０、および、この場合においては、カルマンフィルタであると仮定される観測器９２を含む。ＭＰＣコントローラ９０は、制御信号ｕを、プロセスプラント９４およびカルマンフィルタ９２に提供する。さらに、ＭＰＣコントローラおよびカルマンフィルタ９２は、同様にプロセスプラント９４に提供されるかまたはプロセスプラント９４内に存在する外乱入力ｄを受取り、測定された被制御変数ｙの形態でプラント９４からフィードバックを受取る。プロセスプラント９４は、モデル化された形態で図３に示され、その中で、プラント９４は、制御信号ｕおよび外乱信号ｄを受取るプラント伝達関数９６および種々の予測誤差源または外乱源を含む。特に、外乱および雑音モデル９８（伝達関数ＧＷ）は、雑音ｗ（たとえば白色雑音であってよい）を受取り、雑音モデル９８の出力は、（純粋に理論的な加算器１００において）プラント伝達関数９６の出力に付加される。加算器１００の出力は、別の理論的な加算器１０２において測定誤差または測定雑音ｚに付加されて、測定されたプロセス出力ｙを生成する。
【００４２】
このモデルでは、確率的状態空間が特徴であるプロセスの状態変数ｘの更新は、ガウス分布プロセス雑音ｗｋおよび測定雑音ｎｋについて
ｘｋ＋１＝Ａｘｋ＋Ｂｕｋ＋ｗｋ          （４）
ｙｋ＝Ｃｘｋ＋ｎｋ                      （５）
として表現されうる。
【００４３】
図３の観測器９２などの状態観測器の一般的な目標は、全ての測定可能なシステム入力および出力に基づいてシステムの内部状態の予測値を提供することである。特に、方程式（４）および（５）についての仮定の１つが、（プロセスをモデル化する）ベクトルＡ、Ｂ、およびＣが正確にわかっていることである場合、観測器利得が計算されうる。カルマンフィルタと呼ばれる、１９６０年代に開発されたフィルタ定式は、雑音があるかまたは不完全な測定に基づいて内部プロセス状態を推定するための、プロセス制御における最も一般的な方法であった。方程式（１）〜（３）に示すＭＰＣ定式を使用する離散的サンプリングシステムの場合、次の状態ｘｋ＋１を推定するためのカルマンフィルタ方程式は、
【００４４】
【数２】
0005504175.tif 000003
【００４５】
である。式中、Ｊはカルマンフィルタ利得であり、
【００４６】
【数３】
0005504175.tif 000004
【００４７】
はｋの状態変数を有する状態ベクトルであり、ｙｋは予測プロセス出力であり、
【００４８】
【数４】
0005504175.tif 000005
【００４９】
はプロセス出力の実際の値である。
【００５０】
非測定外乱および測定雑音についての共分散がわかっている場合、汎用カルマンフィルタ構造は、プラントモデルにＧＷ（外乱および雑音モデル）を付加し、次に、（図３に示す）付加されたモデルについてＭＰＣコントローラ利得を再計算することによって生成されうる。フィルタ利得Ｊは、リカッチ方程式(Riccati equation)を数値的に解くことによって確定される。このとき、ＱＫＦは、外乱ｗの共分散を表す半正定（ｐｏｓｉｔｉｖｅ  ｓｅｍｉ−ｄｅｆｉｎｉｔｅ）マトリクスであり、ＲＫＦは、測定雑音ｚの共分散を表す正定（ｐｏｓｉｔｉｖｅ  ｄｅｆｉｎｉｔｅ）マトリクスである。共分散がわからない場合、簡易バージョンのカルマンフィルタが使用されうる。この定式は、外乱ｗが独立であり、したがって、外乱ｗの各要素がプロセス出力ｙの１つ（でかつ１つだけ）の要素に影響を及ぼすことを仮定する。この仮定の結果として、ＱＫＦおよびＲＫＦ、入力および測定雑音共分散は必要とされない。代わりに、この簡易化は、フィルタ時定数τｉ、および、各外乱についての信号対雑音比ＳＮＲｉの推定値を使用して、以下のように外乱モデルを生成する。
【００５１】
【数５】
0005504175.tif 000006
【００５２】
式中、ａｉ＝ｅ−Ｔ／τｉ（０＜τｉ＜∞）であり、Ｔはサンプリング期間である。τｉ→０になるにつれて、Ｇｗｉ（ｑ）は単位利得に近づき、一方、τｉ→∞になるにつれて、Ｇｗｉは積分器になる。Δｗの要素ｉは、ゼロの平均値および標準偏差σｗｉ（ここで、ｗｉ（ｋ）＝ｗｉ（ｋ）−ｗｉ（ｋ−１））を有する静的白色雑音信号であり、ｚの要素ｉは、ゼロの平均値および標準偏差σＺｉを有する静的白色雑音信号である。
【００５３】
状態更新の目標は、時間の全ての場合において（すなわち、離散的コントローラの全てのスキャン期間において）目下の状態変数の考えられる最良の推定値を見出すことである。しかし、十分にチューニングされたＭＰＣコントローラにおいて、考えられる最良の推定値を利用することは、考えられる最良の制御性能をもたらすことを必ずしも意味しない。特に、状態更新モデルの閉ループフィードバック経路の動的挙動は、観測器利得Ｊに依存する。しかし、観測器利得Ｊは雑音共分散（または、簡易カルマンフィルタ定式の場合、信号対雑音比）から導出されるため、観測器伝達関数を考慮するチューニングパラメータまたは総称変数が全く存在しない。したがって、閉ループ制御性能は、好ましくない（最適に満たない）方法で影響を受ける可能性がある。しかし、広い範囲のＪについての閉ループ応答が、特定のコントローラ状況について非常に類似することが判断された。そのため、Ｊの値は、制御性能に非常に小さな影響を及ぼすだけであるように見える。意外にも、この観測は、完全なモデルの場合とモデル不一致の場合の両方に当てはまる。実際に、観測器内での移動ペナルティおよび誤差ペナルティのチューニングは、モデル不一致が有る場合と無い場合の両方で、制御性能に著しく大きな影響を及ぼすことが判断された。したがって、これらのチューニングパラメータは、以下で提供されるチューニングの説明で使用されることになる。
【００５４】
観測器は、ＭＰＣフィードバック性能を改善するが、ＰＩＤコントローラなどの経験的にチューニングされるコントローラが持たない仮定を依然として有する。さらに、モデルベース観測器が有る場合かまたは無い場合の任意のモデルベース予測コントローラは、モデルが完全にわかっていることを仮定することになり、これは、実際のプロセスプラントではほとんど間違いなく当てはまらない。残念ながら、小さなモデル誤差であっても、不十分なコントローラ性能をもたらす大きな予測および状態更新誤差の原因となりうる。
【００５５】
先に説明したように、モデル予測コントローラ用のチューニングパラメータは、一般に、特定のプラント適用に望ましい方法でコントローラ挙動を調整するために使用される。たとえば、ある所望の応答速度は、移動ペナルティＲをある値にチューニングすることによって設定されてもよい。しかし、コミッショニングエンジニアによって設計される予想挙動は、モデル不一致が微々たるものである場合にのみ発生することになり、これは、産業用プラントにおいてほとんど当てはまらない。明白なモデル不一致を反映するために、実行者は、所望の挙動が観測可能になるまで反復的チューニングに頼ることが多い。このプロセスは、非常に時間がかかるためコストがかかり、運転中のプラントに関して考えられる全ての制御および制約シナリオをカバーすることが難しいため最適でない可能性がある。この方法が、所与のモデル不一致について所望のプラント挙動をもたらしても、挙動は、モデル不一致の大きさが変化する場合、変化することが予想されうる。さらに、モデル不一致およびその変動の量がわかっていても、この情報からチューニング情報を導出する方法が存在しない。
【００５６】
以下で述べるＭＰＣ適応およびチューニング技法は、プロセスモデル不一致の知識を使用して、一定のまたは変化するモデル不一致の存在下で最適制御性能のためのチューニングを確定する。一般に、このＭＰＣ適応およびチューニング技法は、特定のプロセスモデル（たとえば、プラントコミッショニングにおいて確定されるプロセスまたはプラントモデル）に基づく最適化基準およびプロセスモデル不一致の指標を実装して、最適な一組のＭＰＣコントローラ設計およびチューニングパラメータを生成し、最適な一組のＭＰＣコントローラ設計およびチューニングパラメータは、最初のプロセスモデルと共にＭＰＣコントローラで使用されると、良好なまたはより最適な制御を実現する。このＭＰＣコントローラ適応およびチューニング技法は、たとえば観測器（カルマンフィルタなど）を有するＭＰＣコントローラ、ＤＭＣコントローラ、または上述した他のＭＰＣコントローラタイプのうちの任意のタイプを含む多くの異なるタイプのＭＰＣコントローラと共に使用されうる。しかし、説明のために、ＭＰＣコントローラ適応およびチューニング技法は、カルマンフィルタの形態の観測器を有するＭＰＣコントローラについて、種々の設計およびチューニング基準を確定するために適用されるものとして述べられることになる。この場合、以下で見られるように、適応およびチューニング技法は、使用するカルマンフィルタのタイプ、そのタイプのカルマンフィルタについて使用されるチューニングパラメータ、ならびに、ＭＰＣコントローラ自体内で使用されるチューニングパラメータを選択することができる。さらに、一部の実施形態では、ＭＰＣコントローラ適応およびチューニング技法は、プロセスモデルを再形成するかまたは再確定する必要なしで、最初に開発されたプラントモデルの代わりに、ＭＰＣコントローラにおいて予測モデルとして使用される新しいコントローラモデルを開発することになる。
【００５７】
もちろん、２つのタイプのカルマンフィルタリング技法（汎用カルマンフィルタおよび簡易カルマンフィルタを含む）が、本明細書に記載される開示される適応／チューニング技法における代替のコントローラ形態として説明されるが、他のタイプのＭＰＣコントローラ形態が、同様にこの技法において、または、以下で特に述べる技法の代わりとみなされうる。さらに、特定のコントローラ設計およびチューニングパラメータが、カルマンフィルタおよびＭＰＣコントローラに使用されるように利用可能であるものとして述べられたが、他の設計およびチューニングパラメータが、他の実施形態において使用されてもよく、これらの設計およびチューニングパラメータは、チューニング技法によって考えられる特定のＭＰＣコントローラに基づく。
【００５８】
新しいＭＰＣコントローラ適応およびチューニング技法が基礎を置く第１の一般原理は、チューニングパラメータが、ＭＰＣコントローラの挙動、したがって、閉ループ制御性能に影響を及ぼす方法が、任意の所与の時間に存在するモデル不一致の量に依存することである。ある場合には、これらの関係は、非常に重要でありうり、かつ／または、さらに非線形でありうる。モデル不一致の存在下でうまく働く、本明細書で述べる新しいＭＰＣコントローラ適応およびチューニングシステムは、モデル不一致の存在下で最適な制御挙動を実現するＭＰＣコントローラ形態および／または設計およびチューニング設定を確定するために、考えられる種々の異なるＭＰＣ設計およびチューニングパラメータの考えられる選択を含む。一実施形態では、以下のＭＰＣコントローラ適応およびチューニング技法は、カルマンフィルタリングを用いるＭＰＣコントローラの形態でここで説明される、観測器ベースＭＰＣコントローラの異なる形態の中で選択してもよい。しかし、他のＭＰＣコントローラ形態の中での選択が、併せてまたは代わりに使用されうる。以下で述べる特定の実施形態では、カルマンフィルタのタイプ（ＴＫＦ）は、汎用的であってよく（すなわち、汎用カルマンフィルタ）、または、簡易的であってよい（すなわち、簡易カルマンフィルタ）。この場合、設計およびチューニングパラメータは、予測ホライズン（Ｐ）、制御ホライズン（Ｍ）、移動ペナルティ（Ｏ）、および誤差ペナルティ（Ｒ）の選択の形態で、両方のＭＰＣコントローラについて確定されてもよい。同様に、チューニングパラメータは、カルマンフィルタについて確定されてもよく、カルマンフィルタは、汎用カルマンフィルタの場合、外乱ｗの共分散（ＱＫＦ）および測定雑音の共分散（ＲＫＦ）であってよく、また、簡易カルマンフィルタの場合、各外乱について、フィルタ時定数τｉ（Ｔ）および信号対雑音比（ＳＮＲ）のベクトルであってよい。これらの設計およびチューニングパラメータは、これらのパラメータを指定するために、コンピュータ実施態様で使用されてもよいタイプのデータの指標と共に、以下で要約される。
・ＭＰＣコントローラチューニング：
・Ｐ（予測ホライズン）、整数
・Ｍ（制御ホライズン）、整数
・Ｑ（移動ペナルティ）、浮動小数点ベクト
・Ｒ（誤差ペナルティ）、浮動小数点ベクトル
・カルマンフィルタのタイプ（ＴＫＦ）：汎用または簡易、ブール的
・カルマンフィルタチューニング
・汎用
・ＱＫＦ（外乱ｗの共分散）、浮動小数点マトリクス
・ＲＫＦ（測定雑音ｚの共分散）、浮動小数点マトリクス
・簡易
・Ｔ（フィルタ時定数τｉ）、浮動小数点ベクトル
・ＳＮＲ（各外乱についての信号対雑音比）、浮動小数点ベクトル
【００５９】
ＭＰＣの異なる実施態様は、最大移動レートまたは参照軌跡などの、追加のまたは異なるチューニングパラメータを使用してもよい。しかし、こうしたパラメータは、通常、オペレータの特定の必要性を対象としており、得られる効果は、先に同定したパラメータにオーバラップする可能性がある。そのため、ＭＰＣコントローラの動的挙動に影響を及ぼす他の手段が存在しても、所望のプロセス挙動の多くは、上述したパラメータによって対処されうる。さらに、本明細書で述べる設計／チューニングパラメータは、コントローラ形態パラメータ（すなわち、ＴＦＫ）を含み、コントローラ形態パラメータは、この場合特に、ＭＰＣコントローラの形態を、２つの異なるタイプの観測器ベースＭＰＣコントローラの一方であるものとして（すなわち、汎用カルマンフィルタ形態または簡易カルマンフィルタ形態の一方であるものとして）指定する。しかし、コントローラ形態パラメータは、観測器ベースコントローラ形態と非観測器ベースコントローラ形態との間や、ＤＭＣコントローラとＭＡＣコントローラとの間で、などのように、異なる形態のコントローラを指定しうる。
【００６０】
モデル不一致およびチューニングパラメータは、閉ループ制御性能と高い相関があるため、ＭＰＣコントローラ適応およびチューニング技法は、モデル不一致の存在下で最適な一組のＭＰＣコントローラ設計およびチューニングパラメータを確定するために解くことができる、制約付き最適化問題とみなされうる。図４は、いずれかまたは両方の設計およびチューニングパラメータを生成し、ＭＰＣコントローラに提供するために、この最適化問題を実装し解く構成を示す。特に、図４の最適化ブロック１１０は、ＭＰＣコントローラ１１４で使用されるプロセスモデルの知識およびモデル不一致の量に基づいて、カルマンフィルタ１１６の形態の観測器に結合するＭＰＣコントローラ１１４を有するＭＰＣコントローラユニット１１２で使用するための理想的なまたは最適な設計およびチューニングパラメータを確定する。ここで、ＭＰＣコントローラ１１４およびカルマンフィルタ１１６はそれぞれ、図３に関して先に説明したコントローラ９０および観測器９２であってよい。
【００６１】
図４の最適化ブロック１１０は、入力として、プラントのために最初に開発され、おそらくＭＰＣコントローラによって使用されるプロセスモデル（「プラントモデル」として示す）および存在するモデル不一致の指標を受容する。存在するモデル不一致の量は、たとえば図１のユーザ入力ルーチン４６を介してユーザによって入力されてもよく、または、以下で述べる方法などの他の方法で確定されてもよい。これらの入力に基づいて、最適化ブロック１１０は、（考えられる利用可能なタイプから）使用する理想的なまたは最も適したＭＰＣコントローラタイプまたは形態を確定すると共に、特定のプロセスモデルおよびモデル不一致を考慮して、確定されたＭＰＣコントローラタイプについて使用するための特定の設計パラメータならびにコントローラおよびフィルタリングパラメータを確定する。そのため、図４の最適化ブロック１１０を出る一番上のラインで示すように、最適化ブロック１１０は、ＭＰＣコントローラユニット１１２で使用するためのカルマンフィルタリング技法のタイプ（ＴＫＦとして同定される）、および、このＭＰＣコントローラタイプについて使用するためのチューニングパラメータを確定する（ＴＫＦが汎用カルマンフィルタである場合、ＱＫＦおよびＲＫＦとして同定され、または、ＴＫＦが簡易カルマンフィルタである場合、ＴおよびＳＮＲとして同定される）。ブロック１１０は、これらの設計およびチューニングパラメータをカルマンフィルタ１１６に提供する。さらに、最適化ブロック１１０は、最適化の一部として、ＭＰＣコントローラ１１４によって使用される一組の設計およびチューニングパラメータを確定する。これらのパラメータは、ＭおよびＰ（設計パラメータ）ならびにＱおよびＲ（チューニングパラメータ）として図４で同定される。これらのパラメータは、ブロック１１０を出る下の２つのライン上に、最適化ブロック１１０によって出力されるものとして示される。一般的に言えば、最適化ブロック１１０によって確定される設計およびチューニングパラメータは、最適化ブロック１１０内に格納されるかまたは最適化ブロック１１０によって実行される目標関数を（目標関数に提供される制約内で）最小にするパラメータであり、プロセスまたはプラントモデルおよび存在するモデル不一致を考慮して、最良のコントローラ性能を同定する。重要なことには、図４の最適化ブロック１１０は、最適化ブロック１１０の目標関数に基づいて、ＭＰＣコントローラユニット１１２で使用するための一組のＭＰＣ設計およびチューニングパラメータの値を生成し、その設計およびチューニングパラメータは、プラントモデル自体を変更するかまたは再生成する必要なしで、目下のプロセスまたはプラントモデルおよびモデル不一致が与えられると、考えられる最良のまたは最も理想的な制御をもたらす。
【００６２】
一実施形態では、最適化ブロック１１０は、セトリング時間にわたって関数ｆ（ｘ）（目標関数）の積分絶対誤差（ＩＡＥ）を最小にするように試みる目標関数を使用する。しかし、この最適化は、ＭＰＣコントローラの制御ホライズンまたは予測ホライズンなどの移動性ホライズン、または、所望される場合、他の期間にわたって確定されうる。もちろん、任意の数の異なる目標関数が使用されることができ、これらの目標関数が実装されて、最小ＩＡＥ、または、最小２乗誤差、積分誤差、変化性、標準偏差などのような他のある尺度を確定し、それにより、最適制御性能を評価しうる。さらに、任意の方法で物理的および論理的境界に対処するために、最適化アルゴリズムに制約が付加されて、最適化ブロック１１０が、あるプロセスまたは制御制約の違反を引起すコントローラ設計または一組のチューニングパラメータを指定することを防止してもよい。しかし、通常、制約のまさにその値は、計算の範囲だけに影響を及ぼし、総合的な結果に影響を及ぼさない。
【００６３】
１つの特定の実施形態では、図４の最適化ブロック１１０によって実施される最適化計算は、以下の目標関数を実装してもよい。
【００６４】
【数６】
0005504175.tif 000007
【００６５】
式中、Γは一組の設計およびチューニングパラメータ（この実施例では、［Ｐ、Ｍ、Ｑ、Ｒ、ＴＫＦ、ＱＫＦ、ＲＫＦ、Ｔ、ＳＮＲ］Ｔであってよい）であり、
【００６６】
【数７】
0005504175.tif 000008
【００６７】
はプロセスまたはプラントモデル（この実施例では、＝［Ｇ、τ１、τ２］Ｔであってよい）であり、
【００６８】
【数８】
0005504175.tif 000009
【００６９】
は、１つまたは複数のプロセスモデルパラメータにおけるプロセスモデル不一致であり、ｇ（Γ）は、たとえば、制御アルゴリズムの計算限界、プロセス限界などを記述する計算制約を規定する。ここで、Ｇは、プロセスモデル利得パラメータであり、τ１およびτ２は、プロセスモデルの１次および２次時定数パラメータである。もちろん、ＩＡＥは、制御性能尺度として使用される積分絶対誤差であり、
【００７０】
【数９】
0005504175.tif 000010
【００７１】
として計算されてもよい。式中、ｙ（ｔ）は、被制御プロセス出力変数であり、ＳＰ（ｔ）は、その被制御出力変数についてのオペレータ設定点である。
【００７２】
基本的に、図４の最適化ブロック１１０は、コントローラが最初のプロセスモデルを使用して設計されるが、プロセスモデル不一致の存在下で動作するときの、ＭＰＣコントローラの動作をシミュレートし、このシミュレーションを（特定のモデル不一致について）複数の異なる組のコントローラ設計／チューニングパラメータのそれぞれについて実施して、特定のモデル不一致における複数の異なる組のコントローラ設計／チューニングパラメータのそれぞれについてコントローラ性能尺度（たとえば、ＩＡＥ）を確定する。１つの実施例では、最適化ブロック１１０は、プロセスモデルおよび予想されるかまたは観測されるモデル不一致に基づいて、考えられる異なるＭＰＣコントローラ形態（たとえば、考えられるカルマンフィルタタイプ）について（ＭＰＣコントローラおよびカルマンフィルタの両方の）チューニングパラメータの異なる値についての、一組の考えられる種々の組合せのそれぞれを使用することから生じる（ＩＡＥの形態の）予想されるプロセス誤差を計算する。最適化ブロック１１０は、その後、モデル不一致を考慮して最小のＩＡＥ（すなわち、最良の性能）をもたらす特定の組の設計および／またはチューニングパラメータを確定し、それにより、コントローラ性能尺度に基づいてモデル予測コントローラで使用するためのコントローラ設計／チューニングパラメータの組みのうちの最適なパラメータを確定する。これらの設計およびチューニングパラメータは、その後、図４のＭＰＣコントローラユニット１１２で使用されて、ＭＰＣコントローラ１１４によって使用されるコントローラモデルを変更することなく、また、プラントモデル自体を再形成するかまたは再生成する必要なしで、その量のモデル不一致の存在下で良好なまたはより最適な制御を実施してもよい。
【００７３】
最適化ブロック１１０の動作をより詳細に示すために、図５は、プロセスモデル利得における所与の量のモデル不一致についての考えられる最良のＩＡＥ（すなわち、最小ＩＡＥ）を示すプロットを提供し、そのプロットは、汎用カルマンフィルタを有するＭＰＣコントローラと簡易カルマンフィルタを有するＭＰＣコントローラの両方について、モデル不一致の異なる値について方程式（９）の最適化を解くことによって得られたものである。詳細な最適化結果は、以下の表１に示され、表１では、アクティブな制約に関連する、すなわち、チューニングパラメータがある制約に保持された場合のＩＡＥ値は、アスタリスクを先頭に付された形で示される。さらに、モデル不一致は、実際のプロセス利得Ｋとモデル化されるかまたは予想されるプロセス利得
【００７４】
【数１０】
0005504175.tif 000011
【００７５】
すなわち、
【００７６】
【数１１】
0005504175.tif 000012
【００７７】
の比として表される。この実施態様は、使用されているＭＰＣコントローラユニット１１２が、多変数コントローラの代わりに、単一入力／単一出力コントローラである実施態様であるため、ＭＰＣコントローラチューニングパラメータＱは１に設定され、ＭＰＣコントローラチューニングパラメータＲの変更のみが許容された。単一ループＭＰＣ実施態様では、ＱとＲの比だけがチューニングを決定するため、この数学的操作が実施されうる。
【００７８】
【表１】
0005504175.tif 000013
【００７９】
表１から、最適化ブロック１１０は、考えられるチューニングパラメータの全てを利用して、任意の特定のモデル不一致について見出される最小ＩＡＥによって規定される最適制御性能を達成することが見てわかる。興味深いことには、最適化ブロック１１０は、制約が課されない限り、かなり類似する制御性能をもたらす、モデル不一致の異なる値についての異なるチューニングパラメータを確定する。制約が課されると、最適化ブロック１１０は、モデル不一致を補償するための自由度（すなわち、チューニングパラメータ）がなくなるため、コントローラ性能は通常不利をこうむる。同様に、表１から見てわかるように、汎用カルマンフィルタリングを用いるＭＰＣは、プロセス利得Ｋの不一致が、
【００８０】
【数１２】
0005504175.tif 000014
【００８１】
である場合、簡易カルマンフィルタリングを用いるＭＰＣより性能が優れる。ここで、Ｋは実際のプロセス利得であり、
【００８２】
【数１３】
0005504175.tif 000015
【００８３】
はモデル化されるかまたは予想されるプロセス利得である。しかし、簡易カルマンフィルタリングを用いるＭＰＣは、プロセス利得の不一致が、
【００８４】
【数１４】
0005504175.tif 000016
【００８５】
である場合、汎用カルマンフィルタリングを用いるＭＰＣより性能が優れる。もちろん、汎用カルマンフィルタリング定式は、状態変数を更新するために指数加重移動平均（ｅｘｐｏｎｅｎｔｉａｌｌｙ  ｗｅｉｇｈｔｅｄ  ｍｏｖｉｎｇ  ａｖｅｒａｇｅ）（ＥＷＭＡ）フィルタリングを使用する簡易カルマンフィルタリング技法の定式より厳密である。そのため、簡易カルマンフィルタリング技法は、予想より大きい利得を非常にうまく扱うようにチューニングされることができないが、予想より小さい利得に関しては優る。換言すれば、簡易カルマンフィルタリングを用いるＭＰＣはフィルタリングに基づくが、プロセス応答が予想より小さい利得を有する場合（すなわち、
【００８６】
【数１５】
0005504175.tif 000017
【００８７】
である場合、汎用カルマンフィルタリングを用いるＭＰＣより頑健である。しかし、
【００８８】
【数１６】
0005504175.tif 000018
【００８９】
である場合、簡易カルマンフィルタリングを用いるＭＰＣは、汎用カルマンフィルタリングを用いるＭＰＣに比べて、わずかに高い積分絶対誤差を生成する。
【００９０】
モデル不一致が、１次時定数（τ１）に起因するかまたはそこに存在する場合、２つのカルマンフィルタリング法の間の積分絶対誤差の差は、より顕著になる。図６および以下の表２に示すように、プロセスが、予想より応答性が高い（すなわち、
【００９１】
【数１７】
0005504175.tif 000019
【００９２】
である。ここで、τ１は実際の１次時定数であり、
【００９３】
【数１８】
0005504175.tif 000020
【００９４】
は、プロセスモデルに関連する１次時定数である）場合、ＩＡＥは、振動が発生するため、非常に急峻な傾斜で上昇する。両方のカルマンフィルタリング法は、振動によって同様に影響を受け、一定のまたは変動するモデル不一致の存在下での最適制御用の自動方法は、必ず振動を回避するようにすべきである。しかし、プロセスが予想より遅く反応する、すなわち、
【００９５】
【数１９】
0005504175.tif 000021
【００９６】
である場合、簡易カルマンフィルタリングを用いるＭＰＣは、かなり良好に働き、このことは、汎用カルマンフィルタリングは、安定しているが、このシナリオでは使用されるべきでないことを意味する。簡易カルマンフィルタリング定式は、チューニングパラメータの１つとしてフィルタ時定数を使用するため、最適化法は、プラントモデルと実際のプラント特性との間の時定数不一致を補償するために、このチューニングパラメータを容易に使用しうる。この補償は、表２（やはり、表２では、アクティブな制約に関連する値は、先頭にアスタリスクが付された形で示される）の値において容易に観測されうる。汎用カルマンフィルタチューニングパラメータが制約に固定され、ＭＰＣコントローラチューニングパラメータだけが、依然として移動するのを許容されるが、簡易カルマンフィルタのＴパラメータは、広い範囲にわたって移動し、モデル不一致を補償し、それにより、ＩＡＥを非常に低いレベルに維持する。もちろん、先に示したように、カルマンフィルタタイプは、図４に述べる最適化法のブール的出力として特に提供され、この出力により、図４のカルマンフィルタ１１６に、簡易カルマンフィルタリングの使用と汎用カルマンフィルタリングの使用との間での切換えが生じる。
【００９７】
【表２】
0005504175.tif 000022
【００９８】
表２および図６からもわかるように、考えられる最小ＩＡＥは、汎用カルマンフィルタの場合、
【００９９】
【数２０】
0005504175.tif 000023
【０１００】
（すなわち、モデル不一致比＝１の場合）の（図６のプロットの）左にある。実際のプロセスの１次時定数が、ＭＰＣコントローラに比べて約半分の値に変化し、汎用カルマンフィルタが、
【０１０１】
【数２１】
0005504175.tif 000024
【０１０２】
となるように設計された場合、ＩＡＥは減少する。このことは、カルマンフィルタ利得Ｊについての推奨されたチューニングが、考えられる最良の制御性能をもたらさないことを意味する。この状況は、ＭＰＣコントローラ内で実施されるコントローラ最適化問題が、移動を最小にしながら、静的誤差を最小にするように設計されるために起こり、一方、適応／チューニング最適化問題は、被制御変数誤差のＩＡＥを最小にするように設計され、それにより、制御性能を直接最大にする。
【０１０３】
２次時定数（τ２）のモデル不一致の影響は、図７に示され、以下の表３に提供されているが、先に示した１次時定数（τ１）のモデル不一致の影響と非常に似ている。汎用カルマンフィルタと簡易カルマンフィルタとの間の差異の規模は小さいが、傾向は、基本的に同じである。
【０１０４】
【表３】
0005504175.tif 000025
【０１０５】
ＭＰＣ制御および状態更新についての最適チューニングパラメータは、最適化を使用して、プラントモデルおよびモデル不一致に関する知識から確定されるが、モデル不一致およびこのモデル不一致を補償するのに使用される最適コントローラ設計およびチューニングの影響は、上記実施例において各モデルパラメータについて別々に解析された。現実のプラントシナリオでは、所定のモデルに対応するプロセスモデルパラメータの全て（および種々の理由でモデル化されない他のプロセスモデルパラメータ）は、同時に変わってもよく、また、おそらく同時に変わることになる。どのモデルパラメータが最も影響を受けるかは、主に、プロセスタイプおよびモデル不一致の理由（たとえば、管汚損、燃料の熱係数の変動など）に依存する。さらに、使用されるモデル同定法に応じて、たとえば進み時定数のモデル不一致は、モデルむだ時間または時定数のモデル不一致として解釈されてもよい。そのため、１つまたは２つのモデルパラメータは、モデル不一致に同時に著しく寄与することが多い。結果として、上記実施例で実施される１次元空間の代わりに、多次元空間でモデル不一致を解析して、任意の特定の場合に使用するための最良の一組のモデルパラメータを確定することが有利である。すなわち、１つのプロセスモデルパラメータにおいて、ある不一致について最適な一組の設計およびチューニングパラメータを確定する代わりに、複数のプロセスモデルパラメータ（たとえば、プロセス利得、１次時定数、および２次時定数）において同時の不一致が存在する状況について最適な一組の設計およびチューニングパラメータを確定することが有利である。
【０１０６】
図８は、プロセス利得Ｋと１次時定数τ１の両方が、モデル不一致を同時に有することを許容された２次元のプロセスモデル不一致を可能にするときの、図４の最適化法によって計算された、汎用カルマンフィルタ状態更新技法を使用するシミュレートされたＭＰＣコントローラにおける考えられる最良のＩＡＥの表面プロットを示す。この場合、１次時定数および２次時定数についての最適チューニングは、非常に似ており、１次時定数がより重要である。３次元可視化が４次元可視化より好ましいため、２次時定数τ２におけるモデル不一致の影響は、図８のプロットでは無視された。実際に、２次時定数τ２は、変動することを全く許容されなかったが、不一致を全く有さないと仮定された。以下の表４は、図８のプロットに示すプロセス利得Ｋと１次時定数τ１についての不一致値の種々の組合せの組のそれぞれにおいて最小ＩＡＥの値を提供する。表４の各ボックスに関連する、ＭＰＣコントローラおよびＭＰＣコントローラと共に使用される汎用カルマンフィルタについての最適チューニングパラメータの値は、示されないが、上述した最適化技法を使用して計算された。ここで再び、モデル不一致は、実際のプロセスパラメータ値とモデル化されたプロセスパラメータ値の比として表現される（すなわち、
【０１０７】
【数２２】
0005504175.tif 000026
【０１０８】
および
【０１０９】
【数２３】
0005504175.tif 000027
である）。
【０１１０】
【表４】
0005504175.tif 000028
【０１１１】
より容易な可視性のために、
【０１１２】
【数２４】
0005504175.tif 000029
【０１１３】
および
【０１１４】
【数２５】
0005504175.tif 000030
【０１１５】
（すなわち、モデル不一致が全く起こらない）の値が、図８の点線として示される。これらの線が交差する点は、プロセスモデルが完全に一致した制御性能を示す。これらの線のそれぞれに沿う断面は、図５および図６のプロットを正確に表す。先に説明したように、
【０１１６】
【数２６】
0005504175.tif 000031
【０１１７】
の方向における１次時定数のモデル不一致は、振動挙動をもたらす。しかし、
【０１１８】
【数２７】
0005504175.tif 000032
【０１１９】
であるように、プロセス利得のモデル不一致も同時に存在する場合、この振動は起こらないことが見てわかる。予想されるように、
【０１２０】
【数２８】
0005504175.tif 000033
【０１２１】
であるような利得のモデル不一致によって、問題は悪化する。本来異なるモデルパラメータにおけるモデル不一致が、制御性能に対する総合的な影響を打ち消すかまたは増幅しうることは、最適コントローラ設計およびチューニングパラメータの計算中にモデル不一致の全ての次元を評価することが有利であることを示す。図８から、考えられる最良の制御性能は、必ずしも完全なモデルによって達成されるわけではないことも明らかである。たとえば、図８のプロットでは、
【０１２２】
【数２９】
0005504175.tif 000034
【０１２３】
でかつ
【０１２４】
【数３０】
0005504175.tif 000035
【０１２５】
である場合、制御性能は、
【０１２６】
【数３１】
0005504175.tif 000036
【０１２７】
でかつ
【０１２８】
【数３２】
0005504175.tif 000037
【０１２９】
のＩＡＥの代わりに、０．０５４５のＩＡＥを有する。チューニングパラメータが、上述の最適化定式によって最適に計算されると仮定すると、この差は、５６％の改善になる。
【０１３０】
もちろん、仮定されるプロセスモデルおよび正確なプロセスモデル不一致がわかっている場合、ＭＰＣコントローラおよび観測器（カルマンフィルタ）によって使用されるプロセスモデルは、さらに良好な性能を達成するために、完全なモデルと置換されうる。しかし、実際の制御状況では、モデル不一致を測定することが難しく、その結果、本明細書で述べるＭＰＣ設計およびチューニング技法は、正確なまたは完全なプロセスモデルを知ることなく、良好なまたは最適なＭＰＣコントローラ動作を目的としている。実際に、本明細書で述べる設計およびチューニング方法は、（たとえば、図４で規定された）ＭＰＣコントローラユニットチューニングパラメータを調整し、仮定されたプラントモデルを不変のままにする（これが、プラントにおけるエンジニアの最良の推測であることになるためである）。
【０１３１】
図９は、簡易カルマンフィルタリングを用いるＭＰＣについての等価な３次元最適チューニングマップ、すなわち、汎用カルマンフィルタを用いるＭＰＣコントローラについて図８のチューニングマップと同じ方法で作成されたチューニングマップを示す。ここで再び、モデル不一致は、プロセス利得モデルパラメータＫと１次プロセス時定数モデルパラメータτ１の両方で起こることを許容されたが、２次時定数モデルパラメータτ２では起こることを許容されなかった。次の表５に、図９のマップの各点を示す。
【０１３２】
【表５】
0005504175.tif 000038
【０１３３】
（図８および９の）両方の最適チューニングマップの上左角は、不安定性の領域を示す。さらに、両方のプロットは、ＩＡＥ＝２でカットオフされる。いずれの場合も、この領域に、非常に急峻な傾斜で近づくことが明らかである。３次元チューニングマップを計算しプロットすることは、こうした不安定領域のサイズ、位置、および急峻度の容易な評価を可能にする。こうした領域は必ず回避されるべきであるため、ペナルティが高いスラック変数についての制約が、この領域を回避するために図４のブロック１１０で使用される最適化方程式に付加されうる。いずれにしても、異なるカルマンフィルタ方法を用いるＭＰＣの最適チューニングマップを比較すると、両方のコントローラが、領域
【０１３４】
【数３３】
0005504175.tif 000039
【０１３５】
【数３４】
0005504175.tif 000040
【０１３６】
において不安定になることが明らかになる。しかし、汎用カルマンフィルタを用いるＭＰＣだけが、領域
【０１３７】
【数３５】
0005504175.tif 000041
【０１３８】
【数３６】
0005504175.tif 000042
【０１３９】
において不安定になる。先に提案されたように、簡易カルマンフィルタにおいてだけ見出される固有のフィルタリングは、安定化メカニズムとして働く。
【０１４０】
いずれにしても、図４に関連して述べる最適化ベースチューニング方法は、特定のプロセスについてのプロセスモデル不一致を考慮した、最良のＭＰＣコントローラ形態ならびに設計およびチューニングパラメータの確定を可能にする。結果として、図４の最適化ブロック１１０は、モデル不一致の特定の値についての最適チューニングを確定し、この最適チューニングは、そのモデル不一致の存在下で最適制御性能を保証することになる特定のＭＰＣおよび観測器設計およびチューニングを確定するのに有用なチューニングマップとして表現されうる。ＭＰＣコントローラの業界ユーザは、通常、所望の挙動に達するように見えるまで、チューニング「ノブ」を手動で調整しなければならないため、図４に関連する技法が、有利に使用されうる。この場合、ユーザは、図５〜９および表１〜５に示すような、チューニング用可視化マップ、プロット、およびデータを閲覧して、１つまたは複数のプロセスモデルパラメータにおけるプロセスモデル不一致の所定のまたは予想される値が与えられる場合、最良のコントローラ形態およびチューニングパラメータを確定してもよい。
【０１４１】
そのため、所望である場合、図４の最適化ブロック１１０は、たとえばユーザによる、あるいは、何らかの他の半自動または自動方法によるブロック１１０への入力として、（１つまたは複数のプロセスモデルパラメータにおける）特定の量のモデル不一致について、最良の設計および／またはチューニングパラメータを計算してもよい。ブロック１１０が、（１つまたは複数のプロセスモデルパラメータにおける）これらの特定の量のプロセスモデル不一致を考慮して、ＭＰＣコントローラユニット１１２で使用される最良の組の設計およびチューニングパラメータを確定した後、これらの設計およびチューニングパラメータは、ＭＰＣコントローラユニット１１２に送出され、良好な制御を実施するために、オンライン制御中に使用されてもよい。別法としてまたは付加的に、ブロック１１０は、多数の組合せのプロセスモデルパラメータ不一致のそれぞれにおいて、考えられる最小ＩＡＥを示す、図８および図９のマップなどの最適ＩＡＥマップを確定し、マップ自体を考慮してユーザが所望のまたは適切なチューニング点を選択することを可能にするために、これらのマップをユーザに提供するかまたは表示してもよい。ブロック１１０は、その後、選択された点に基づいてオンライン制御中に使用される設計およびチューニングパラメータの値をコントローラ１１２に提供してもよい。ブロック１１０は、コントローラユニット１１２と独立に動作してもよいため、コントローラユニット１１２と同じデバイスまたは異なるデバイス内に格納されかつそこで実行されてもよい。そのため、たとえば、ブロック１１０は、図１のコンピュータ１３のうちの１つのコンピュータ内に格納されかつそこで実行され、通信ネットワーク２９を介してコントローラユニット１１２と通信してもよい。コントローラユニット１１２は、図１のコントローラ１１内か、図１のフィールドデバイス１５〜２２の１つまたは複数のデバイス内か、または任意の他の所望にデバイス（複数可）内にあってもよい。
【０１４２】
もちろん、所与のモデル不一致およびプロセスモデルについての最適な組の設計およびチューニングパラメータは、モデル不一致が全く存在しないとき、または、異なる量のモデル不一致が存在するときに最適に満たないものになることが予想される。同様に、正確なモデルよりも、モデル不一致の存在を確定することの方が容易な場合があるが、任意の特定の状況における任意の特定のモデルパラメータについての特定の量のモデル不一致を確定することは依然として難しい可能性がある。同様に、モデル不一致の量を確定することは、必要とするプロセス外乱が少ないため、精密なプロセスモデルを確定することより容易である可能性があるが、モデル不一致の量は、依然として徐々に変化する可能性があり、それにより、この変化するモデル不一致を最適に反映するために、新しい設計およびチューニングパラメータの生成が必要とされる。こうした理由で、ある事例では、各プロセスモデルパラメータについてモデル不一致の特定の値を使用するよりも、適切な組の設計およびチューニングパラメータ値を生成するために、図４の最適化ブロック１１０において種々のプロセスモデルパラメータのそれぞれのモデル不一致範囲を指定し使用することが望ましい場合がある。
【０１４３】
２次元部分空間（この場合、２次時定数を無視する）におけるモデル不一致の範囲の実施例は、実際のプロセス利得Ｋａｃｔｕａｌ＝２±０．５および実際の１次時定数ｔａｃｔｕａｌ＝２０ｓ±５ｓとして書かれてもよい。これらの範囲は、図１０の２次元部分空間で示され、利得の範囲は１に等しく（すなわち、ΔＫ＝１）、１次時定数の範囲は１０秒に等しい（すなわち、Δｔ＝１０ｓ）。モデル不一致が、可能性のある範囲として規定されると、モデル不一致範囲は、図８および図９に関して上述したように計算された最適チューニングマップと重ねられて、ＭＰＣコントローラ適応およびチューニングのさらなる利点を提供しうる。こうしたオーバレイの例示的な図は、図１１に示される。
【０１４４】
所望である場合、こうしたオーバレイは、ソフトウェアパッケージ内に実装されることができ、ソフトウェアパッケージは、たとえば、図８および図９のマップのうちの一方のマップなどの、最適チューニングマップ上で、このオーバレイをプロセスエンジニアに表示する。この可視化は、指定された範囲内の考えられるモデル不一致に基づいて、コントローラが望ましくない作動領域内に移動する可能性を、エンジニアが閲覧し確認することを可能にする場合がある。こうした範囲は、併せてまたは別法として、さらなるＭＰＣコントローラ設計およびチューニグ最適化のために使用されうる。特に、こうした表示は、ＭＰＣコントローラをコミッショニングするときにエンジニアにとって非常に有用でありうる。その理由は、エンジニアが、特定のチューニングについて予想されるモデル不一致範囲の関数として、考えられる最悪および最良の制御性能を容易に視覚的に評価でき、所望に応じて手動補正を行うことができるからである。（範囲オーバレイが有る状態でまたは無い状態で）図８、図９、および図１１のマップなどの最適化マップを表示するためのこの表示ソフトウェアは、ブロック１１０によって生成されてもよく、または、図１のユーザ表示ソフトウェア４６の一部として生成されてもよい。この場合、ユーザ表示ソフトウェア４６は、ブロック１１０と通信してもよく、または、これらのマップを生成するためにこのブロックを含んでもよい。
【０１４５】
いずれにしても、図１１の実施例では、（利得の不一致も時定数の不一致も無い点を中心とする）モデル不一致範囲内の最悪の制御性能は、Ｋａｃｔｕａｌ＝１．５でかつｔａｃｔｕａｌ＝２５ｓである場合に起こる。しかし、その点でのＩＡＥは、０．７であり、モデル不一致範囲表面積のほんのわずかな部分が、０．５を超えるＩＡＥ値とオーバラップするため、その領域内にある可能性が比較的低いことを特に考慮しても、許容可能であるとエンジニアによって考えられうる。モデル不一致に関するより多くの情報（たとえば、物理的なプロセス制限）が入手可能であった場合、図１０に示す２次元モデル不一致部分空間は、発生の可能性を反映するように修正されうる。そのため、たとえば、図１０のモデル不一致部分空間は、モデル不一致の可能性に関する知識に基づいて、たとえば楕円、円、または任意の他の所望の形状を含む、図示する長方形以外の他の形状をとりうる。
【０１４６】
図４のチューニング方法のさらなる改良として、プロセスモデルパラメータの１つまたは複数の値における考えられるかまたは予想されるモデル不一致範囲の量の関数として、所与のプラントモデルについての最も理想的なチューニング点を確定することが有利である場合がある。特に、図１１を調べると、モデル不一致範囲部分空間の中心点が、仮定される「完全な」モデルに固定されるため、計算されるチューニングパラメータが、モデル不一致範囲部分空間の点のうちの任意の点において、図１１のマップ内の考えられる最小のＩＡＥを必ずしも提供しないことが見てわかる。この２次元の実施例では、表面で表されるこの部分空間が、移動することを許容された場合、図４に示すブロックの修正された最適化技法は、モデル不一致範囲表面内で最悪の（最大の）ＩＡＥについてより低い値を見出すことができ、それにより、コントローラの総合性能が向上する。言い換えると、（プロセスモデルパラメータによって規定される種々の次元のそれぞれにおいて）指定された、可能性がある、予想される、または考えられるモデル不一致範囲が与えられると、上述した技法を使用して計算される一組の最適チューニングパラメータを使用することが望ましい場合があり、その一組の最適チューニングパラメータは、一般に、最良のコントローラ動作が、これらの範囲によって規定される部分空間の中心点で、またはさらに、その部分空間内でさえ見出されなくても、また、モデル不一致範囲部分空間の中心点が、プラントのために実際に開発されたプロセスモデルに対応しなくても、その部分空間内でＭＰＣコントローラ動作を最大にする。
【０１４７】
この場合、本明細書に述べるＭＰＣコントローラ設計およびチューニング技法は、（結果が、最初の仮定したモデルと同程度に不確かである可能性があるため）モデル不一致に関する知識を用いて（図４のブロック１１０への入力として提供される）仮定したプロセスモデルを更新しない、または、変更しないが、この技法は、既知のまたは推測されるプロセスモデル不一致範囲を考慮してＭＰＣコントローラを適応させチューニングして、このモデル不一致範囲を考慮して良好な総合制御を実施する。特に、図１２に示すように、モデル不一致範囲部分空間の中心点は、モデル化されるチューニング領域内に再配置されるかまたはチューニング領域内を移動させられて、予想されるプロセスモデル不一致を考慮してその中で動作するチューニング空間の最良の総合部分領域を配置してもよい。この部分領域内で動作するために、（ＭＰＣ制御移動を計算するためにＭＰＣコントローラで使用される）コントローラモデルは、チューニングマップ内の新しい中心点を中心とするようになっていてもよく、その中心点およびモデル不一致部分空間は、総合チューニングマップ内の動作の最良の部分領域をもたらす。ある場合において、チューニングマップ内の総合最良部分領域は、モデル不一致部分空間が全体のチューニングマップを通して移動するため、特定の部分領域内に存在する最悪の（最大の）ＩＡＥの考えられる最小値を計算することによって確定されてもよい。もちろん、全体の不一致領域部分空間にわたる最小平均ＩＡＥ、全体の不一致領域部分空間にわたる最小加重平均などのような、最良の動作部分領域を確定するための、統計ベースの尺度を含む他の尺度も使用されうる。
【０１４８】
所望される場合、特定の最良の不一致部分領域は、
【０１４９】
【数３７】
0005504175.tif 000043
【０１５０】
として定義される第２の最適化問題を定式化し解くことによって見出されうる。式中、Ψは、モデル不一致の任意の組合せにわたって方程式（９）を反復させることによって計算されるチューニングマップであり、ｇΨ（Γ）は、チューニングマップΨの次元を記述する不等式制約を定義し、ｉΨは、チューニングマップΨの次元を定義する。方程式（１１）の特定の最適化は、チューニングマップ内でＩＡＥの最小値を含むモデル不一致範囲部分空間を確定する。チューニングマップが、依然として、エンジニアによって最初に提供されたプロセスモデル（仮定されたプロセスモデル）に基づいて生成されるため、さらなるプロセスモデルの知識はこの操作には必要とされないことが留意されるべきである。方程式（１１）の最適化の結果は、修正されたコントローラモデルおよび一組のコントローラチューニングパラメータであり、修正されたコントローラモデルおよび一組のコントローラチューニングパラメータは、その後、予想されるモデル不一致範囲を考慮して良好な性能を得るために、ＭＰＣコントローラを開発するのに使用される。しかし、新しいコントローラモデルを確定する唯一の目的が、目下のチューニングマップ内でＩＡＥを最小にすることであるため、たとえば図１１または図１２のチューニングマップは、新しいプロセスモデルに基づいて再計算されない。
【０１５１】
この操作を図４の最適化ブロック１１０に付加することによって、ＭＰＣコントローラの設計およびチューニングパラメータは、（新しい中心点の）新しく確定される理想的な値に変更されて、最初の中心点におけるＭＰＣおよび観測器チューニングによって可能である以上に、制御性能を最大にする。ある意味では、この場合、プロセスモデルパラメータは今や、ＭＰＣコントローラ内で使用される新しいコントローラモデルを確定するのに使用されるため、コントローラ設計／チューニングパラメータにもなっている。モデル不一致が存在しない場合、修正モデルを有するコントローラの制御性能は、最初のモデルを有するコントローラの制御性能より悪化することが予想されることは真実である。しかし、先に説明したように、モデル不一致が存在しないという可能性は非常に小さい。現実のプラントシナリオでは、修正されたコントローラがまさに方程式（１１）の最適化計算の目標関数であるため、最初のコントローラの性能は、大多数のモデル不一致シナリオについて修正されたコントローラより悪化する可能性がある。さらに、仮定されたモデルと修正されたモデルとの間の最悪のＩＡＥ点の差は、通常、重要である。その理由は、一方の側で不安定性を、他の側で低い性能をもたらす傾斜が、通常、非常に急峻であるからである。図１３は、ＭＰＣコントローラで使用するための修正されたコントローラモデルならびに一組のコントローラ設計およびチューニングパラメータを確定するため、モデル不一致範囲を使用するために、図４の最適化ブロック１１０がどのように修正されうるかを示す。
【０１５２】
図１３に示すように、最適化ブロック１１０Ａは、方程式（９）の最適化を含む方程式（１１）によって示す２つの最適化を含むかまたは実施し、ブロック１１０Ａへの入力は、（モデルパラメータの１つまたは複数について）特定のモデル不一致を指定することからモデル不一致範囲を指定することへ変更される。ここで、最適化ブロック１１０Ａはまた、新しいコントローラモデル（すなわち、図１３のブロック１１０Ａの出力のうちの１つに示される修正されたコントローラモデル）を開発するのに使用される、モデルパラメータについての新しい一組の値を生成する。本質的に、最適化ブロック１１０Ａによって確定されるモデル不一致部分空間の新しい中心点は、その中心点に関連するプロセスモデルパラメータについての特定の一組の値を有し、これらのモデルパラメータ値は、最初の中心点に関連するモデルパラメータ値と異なる（すなわち、最初のプラントモデルに関連するモデルパラメータ値と異なる）。これらの新しいプロセスモデルパラメータ値は、その後、（ブロック１１０Ａへのプラントモデル入力を実際に変更することなく）新しいコントローラモデルを開発するのに使用され、このコントロ−ラモデルは、新しい中心点に関連する他の設計およびチューニングパラメータ（たとえば、Ｑ、Ｒ、Ｍ、Ｐ）と共に、コントローラ設計パラメータとしてＭＰＣコントローラに提供される。
【０１５３】
特定のモデル不一致からある範囲のモデル不一致へ最適チューニング方法を拡張することは、その有用性を劇的に増加させる。この新しい範囲ベース不一致技法は、わかっているが正確に測定することが難しい特有のプロセスパラメータ変動を有する多くの産業プロセスに適用されうる。さらに、以下で述べるように、適応／チューニング方法は、モデル不一致フィードバックを使用して、図１３の提示された２重最適化方法を、変化するモデル不一致に適応させ、それにより、オンライン制御中の任意の特定の時間に使用される最適なコントローラ設計およびチューニングパラメータの自動確定またはオンライン確定を実現してもよい。
【０１５４】
より詳細には、適応チューニング（すなわち、適応制御）を用いた閉ループ制御を実施する上述したＭＰＣコントローラ適応およびチューニング方法を使用することが可能である。ほとんどの適応制御方法は、一般に、プロセス値の変化、オペレータ設定点の変化などのような検出可能なイベントによってトリガーされると、連続して（たとえば、周期的に）または自発的にプロセスモデルを改良するかまたは再生成することによって働く。新しいモデルが確定された後、コントローラが移動するか、または、チューニングパラメータが、その後、モデルから計算される。しかし、これらの方法は、一般に、外乱または設定点の変化によって導入される可能性があるプロセス変動に依存し、したがって、これらの方法の効率、精度、および安定性は、プロセス変動量に比例して増加する。
【０１５５】
しかし、精密なプロセスモデルを確定するかまたは生成することよりも、モデル不一致の統計的な量または変動を確定することの方が一般に容易である。自己相関などの多くの方法が、閉ループプラントオペレーション中にモデル不一致量を確定するために提案されてきたが、閉ループプラントオペレーション中に良好なプロセスモデルを確定することは非常に難しい。その理由は、（プロセス出力の変動を最小にする）コントローラの目標が、（プロセスアップセットを通してプロセスを動作させて、プロセス出力の変動を最大にする）モデル同定の要件に矛盾するからである。
【０１５６】
以下に述べるコントローラ適応およびチューニングを自動的に実施する方法は、モデル不一致量を使用して、ＭＰＣコントローラユニットの設計およびチューニングパラメータをいつ調整するか、すなわち、図４および図１３の最適化ユニット１１０または１１０Ａをいつ実装するかを確定する。この適応チューニング方法は、ある量のプロセス変動に依存し、実際に、ある量のプロセス変動を必要とするが、制御性能を最大にするチューニングパラメータを導出するために、プロセス変動を最大にする必要はない。
【０１５７】
当技術分野でイノベーション（Ｉｋ）と呼ばれ、残差または予測誤差としても知られる概念は、
【０１５８】
【数３８】
0005504175.tif 000044
【０１５９】
として定義される。式中、ｙｋは予測されるプロセス出力であり、
【０１６０】
【数３９】
0005504175.tif 000045
【０１６１】
は、プロセス出力の実際の値である。この項は、更新される状態変数を計算するためにカルマンフィルタ方程式（６）で使用される。研究者等が、イノベーションを解析する多くの方法を提案したが、こうした方法の適用は、通常、予測制御システムまたはソフトセンサプロジェクト（たとえば、ニューラルネットワーク）のコミッショニングフェーズまたは保守フェーズ中に起こる。たとえば自己相関は、研究者／エンジニアが、イノベーションを解析するために頻繁に使用する方法である。その理由は、自己相関が、プラントのコミッショニングフェーズにおいてモデル誤差と非測定外乱を識別しうるからである。しかし、モデル誤差がオペレータに対して現れるのと同じように、すなわち、予測されるプロセス値と実際のまたは測定されるプロセス値との差として、非測定外乱が現れるため、オンライン制御動作中にモデル誤差と非測定外乱を識別することは難しく、したがって、発生する誤差は、フィードバック制御技法を使用した場合にのみ補正されうる。
【０１６２】
一般的に言えば、イノベーション（Ｉｋ）の自己相関は、誤差信号のうち非ランダム的寄与によるものの量を示す指標を提供する。イノベーションの自己相関の値が高ければ高いほど、存在するプロセスモデル不一致の量が大きい。既知の平均および分散を有する長さｎの離散的時系列｛たとえば、ｙ１、ｙ２、…、ｙｎ｝の場合、自己相関の推定値は、
【０１６３】
【数４０】
0005504175.tif 000046
【０１６４】
として得られうる。式中、Ｒ（ｋ）は、範囲［−１、１］内にある自己相関であり、σ２は分散であり、
【０１６５】
【数４１】
0005504175.tif 000047
【０１６６】
は平均であり、ｋは時間の遅れである。最適にチューニングされたコントローラは、相関信号を除去できるだけであり、また、完全にランダムな外乱（たとえば、白色雑音）を除去できないため、相関信号に対する白色雑音の割合は、コントローラチューニングの最適性の良好な指標である。そのため、たとえば、閉ループ制御システムのプロセス出力が大きな自己相関を有する場合、そこで使用される特定のコントローラのチューニングは、最適でない。
【０１６７】
自己相関ベース解析方法は、手動でチューニングし再チューニングするループのプロセスで頻繁に使用される。自己相関解析が、大きな量のモデル不一致を返す場合、エンジニアは、コントローラ構成が完全でないこと、および、コントローラをコミッショニングする前にエンジニアがプロセスモデルを改良するかまたは再同定しなければならないことを、通常わかっている。プラントエンジニアは、チューニングの性能改善を検証するために第２の基準を使用することが多い。特に、プラントエンジニアは、最も可能性がある動作周波数において振幅比が許容可能であることを保証するために、振幅スペクトルを考慮してもよい。この手動コントローラ設計方法は、イノベーション解析を使用して自動で実行されるようにしてもよいが、たとえば、オンラインコントローラ動作中に連続して適用することができない。さらに、この方法は、モデル不一致を減少させる新しいプロセスモデルを開発するかまたは生成するという形態でプロセスモデル改善サイクルをトリガーすることのみを目的として、モデル不一致量を使用する。
【０１６８】
一方、イノベーションまたは以下で述べる他の誤差解析を使用する自動適応チューニング方法は、連続してまたはその他の方法でオンラインコントローラ動作中に実行され、モデル不一致量を使用して、プロセスモデル再生成サイクルをトリガーするのではなく、新しいプラントモデルを再生成することなく、（新しい量のモデル不一致を最適に反映するためにコントローラを再チューニングために）コントローラについて適応チューニングサイクルをトリガーしてもよい。そのため、この方法は、新しい一組のプロセスモデルパラメータなどを確定するために、新しい一組のプロセスモデルパラメータ、プロセスアップセットを必要としない。特に、モデル予測コントローラの場合、コントローラ出力計算は、プロセスモデルから直接導出され、したがって、自己相関は、モデル不一致に起因しうる。
【０１６９】
産業用プロセス制御で使用される目下の慣行は、非常に基本的な方法でイノベーションにおいてモデル不一致および非測定外乱の組合せを処理する。たとえばＤＭＣコントローラは、ある割合のイノベーションが、非測定外乱を一因として発生すると仮定する。イノベーションの自己相関に基づいてカルマンフィルタ利得をチューニングしている間、この方法は、設計された信号対雑音比および実際の信号対雑音比を適応させることによって、カルマンフィルタによって見られる誤差共分散を最小にしようと試みる。この技法は、フィルタ性能を本質的に最大にするが、必ずしも閉ループ性能を最大にしない。さらに、この適応方法は、誤差共分散を計算するだけであり、また、完全なモデルが既にわかっている場合にのみ使用されうる。
【０１７０】
図１４は、図１３の最適化器ベースのチューニングブロック１１０Ａが、既存のＭＰＣコントローラおよび観測器（カルマンフィルタ「ＫＦ」として示す）と組合わされて、利得スケジューリングＭＰＣコントローラを生成しうる方法を示す。知られている公知のように、利得スケジューリング方法は、プロセスパラメータ値が変化するプロセス用の産業用プラントにおいて非常に一般的である。こうした方法は、コントローラチューニングをスケジュールしてもよく、または、プロセスモデルおよびチューニンパラメータの更新をスケジュールしてもよい。プロセスパラメータが確定的に変化する限り、満足のいく結果が、こうした方法によって達成されうる。実際に、多くのフィードストックおよび機器特性が、産業用プラントにおいて絶えず変化する。例は、燃料の燃焼係数の変化および試薬の濃度の変化を含む。測定可能である場合、これらの特性変化は、変動を直接減少させるためにフィードフォワード制御戦略によって、または、モデリング誤差を相殺し、影響を間接的に打ち消すために利得スケジューリング戦略によって頻繁に使用される。
【０１７１】
図１３のチューニングブロック１１０Ａは、利得スケジューリングを実施するのに使用することができ、より詳細には、プロセスモデルの１つまたは複数のパラメータが変化し、また、のパラメータがわかっている場合、プロセスモデルパラメータは、（プラントモデル入力を介して）最適なＭＰＣ適応／チューニングブロック１１０Ａにおいて更新されることが可能であり、それにより、適応／チューニングブロック１１０Ａは、（新しいプロセスモデルおよび目下のモデル不一致範囲を考慮して）ＭＰＣコントローラおよびカルマンフィルタ用の新しい一組の設計およびチューニングパラメータを生成する。この更新は、プラントエンジニアまたはオペレータによって手動で実施されうる、または、プロセス状態変化に基づいて自動的に実施されうる。後者は、ＰＩＤコントローラのモデルベース利得スケジューリングに匹敵する。図１４では、チューニングブロック１１０Ａとコントローラユニット１１２との間の相互作用は点線で示され、ブロック１１０Ａからコントローラユニット１１２への情報の流れは完全に一方向であることを示す。仮定されたモデル不一致範囲は、設計エンジニアによってＭＰＣ適応／チューニングブロック１１０Ａに入力されてもよく、または、デフォルト設定のままにされてもよい。任意の利得スケジューリングコントローラの場合と同様に、状態変数は、利用可能である場合、特定のプロセス測定に配線接続されうる、または、別個の特性推定器によって評価されうる。プロセス特性がプロセス測定から推測されうるとき、ニューラルネットワークが、プロセス産業において特性推定器として頻繁に使用される。ニューラルネットワークまたはダイナミック線形推定器のような外部特性推定器はまた、重要なモデルパラメータを直接推定するのに使用されうる。
【０１７２】
特性推定器を使用する利得スケジューラとして構成されるＭＰＣ適応／チューニングブロック１１０Ａの実施形態は、図１５に示される。ここで、以下に述べるように、特性推定器１２０は、プロセス９４から１つまたは複数の入力および／または出力（たとえば、測定された）変数または信号を受取るために結合され、これらの変数を使用して、１つまたは複数のプロセスモデル特性またはパラメータ（たとえば、Ａ、Ｂ、Ｃ、Ｄ）の値を推定する。もちろん、任意の所望のまたは適切な特性推定器が、新しいプロセスモデルパラメータ値を確定するためにこの実施例で使用されてもよい。この技法は、モデルパラメータに関するループを閉じ、したがって、適応的であると考えられうる。しかし、適切に動作するために、プロセスモデルパラメータを同定するほとんどの方法は、有意の設定点変化またはプロセス外乱を必要とする。残念ながら、こうしたプロセス外乱は、オンライン制御においては望ましくなく、上述した適応／チューニング方法についての主要な仮定、すなわち、プラントモデルを正確に知ることができず、また、このプラントモデルが、適応／チューニングサイクル中に再形成されることを必要とすべきでないという仮定を維持しない。
【０１７３】
推定器は、制御ループによって測定されない、または、操作されない変数を含む、多くの変数に接続されうる。実際に、推定器は、カルマンフィルタ１１６の入力だけに結合されてもよい。図１６は、適応制御を実施するために、利得スケジューリングコントローラシステムの一部として適応／チューニングブロック１１０Ａを使用する、適応チューニングシステム１２５を示す。図１６に示すように、（イノベーション解析または他の誤差解析を実装してもよい）推定器１２６は、観測器、すなわち、カルマンフィルタに結合され、カルマンフィルタ１１６に関連するイノベーション項を解析して、プロセスモデルパラメータの１つまたは複数について、モデル不一致の量（たとえば、範囲）の推定値を確定する。同様に、または、代わりに、コントローラ１１４に結合されてもよい推定器１２６は、プロセスモデル不一致または不一致範囲を確定するためのイノベーション解析を実装し、確定されたプロセスモデル不一致（複数可）または不一致範囲（複数可）を適応／チューニングブロック１１０Ａに提供して、コントローラユニット１１２について新しい適応／チューニングサイクルを引き起こす。特に、推定器１２６によって実施されるイノベーション解析は、図１６のシステムにおいてモデル不一致範囲（複数可）を自動的に更新するのに使用されてもよい。所望される場合、モデル不一致範囲（複数可）の全てまたは一部だけが、任意の特定の時間にこのような方法で更新されうる。同様に、不一致範囲（複数可）考えられるモデルパラメータの全てまたは一部は、モデルパラメータの数に関してイノベーション方法がどれだけ包括的であるかに応じて修正されてもよい。換言すれば、時として、イノベーション解析は、実際のプロセスモデル内のモデルパラメータの部分集合に関して結論が下されることを可能にするだけである場合がある。その場合、未知パラメータについての範囲が、全てのあるいはほとんどの、予想されるかまたは考えられるモデル不一致シナリオを含むように保存的に設定されてもよい。
【０１７４】
最適なＭＰＣ適応／チューニングブロック１１０Ａの出力は、上述したオンデマンド更新適用と同じ方法で機能するが、有意の量のモデル不一致が検出されるとき、たとえば、１つまたは複数のモデルパラメータについての不一致が、ユーザによって供給された閾値などの所定のまたはプリセットされた閾値、チューニングブロック１１０Ａで以前に使用された不一致範囲などを超えるとき、コントローラ適応およびチューニングを実施することによって、適応ループを閉じる。この適応手法のユニークさは、最初に仮定されたプロセスモデルが、適応／チューニングメカニズムによって決して修正されず、ランアウェイプロセス同定を防止し、頑健性を増加させ、利得スケジューリングを簡略化することである。所望である場合、仮定されたプロセスモデルは、適応を停止させるかまたは再設定する必要なしで、任意の時間に手動で更新することができ、これは、最新の技術水準のモデル更新方法に優る利点である。
【０１７５】
以下でより詳細に述べるように、手動または自動の適応／チューニングサイクルを実装するためのトリガーは、イノベーションの値から、または、確定されたモデル不一致範囲から（すなわち、推定器１２６によって実施されるイノベーション解析への入力またはイノベーション解析の出力から）容易に導出されうる。もちろん、こうしたトリガーは、新しい適応／チューニングサイクルが、ブロック１１０Ａによっていつ実施されるべき時を認識するための、所定の閾値に対するイノベーション解析またはその出力の比較に依存しうる。いずれにしても、上述したイノベーション計算の自己相関の使用は、コントローラ適応を実装する既知の他の方法に対するモデル無しでかつ外乱が少ない代替法を提供することがわかっている。特に、自己相関解析は、プロセスモデルを同定するかまたは再同定する必要なしで、ループの制御性能が改善されうるか否かを判定するのに使用されうる。よリ詳細には、制御誤差（測定されたプロセス出力変数とこの変数についての設定点との差）の自己相関は、定常状態動作中に有意のモデル不一致が存在するかどうかを判定するために有用であり、一方、予測誤差（測定されたプロセス出力変数とこの変数についての以前に予測された値との差）の自己相関は、プロセスアップセット状況中に、有意のモデル不一致が存在するかどうかを判定するために、または、モデル不一致の量または範囲を確定するために有用であることがわかっている。本明細書で使用されるように、イノベーション解析は、ＭＰＣコントローラユニット１１２の制御誤差、予測誤差、または他の誤差の自己相関を含みうる。これらの自己相関は、たとえば自己相関解析が有意の量のモデル不一致を判定するときに、新しい適応／チューニングサイクルを実装するためのトリガーとして使用されてもよい。さらに、異なる時間における同じプロセス変数についての制御誤差または予測誤差の自己相関の比較は、モデル不一致の変化を検出するのに使用されることができ、モデル不一致の変化はまた、新しい適応／チューニングサイクルを実装するためのトリガーとして使用されうる。
【０１７６】
先に提示した概念を検証するために、上述した適応／チューニング方法のいくつかの方法が、実験的な２成分系蒸留塔に適用された。（カルマンフィルタにおけるイノベーションの自己相関からモデル不一致を推定するための実用的な近似を使用する）図１６に関して述べた最適チューニング方法を実装するモデル予測コントローラを使用する、２成分系蒸留塔についての実験的試験運転からの結果が、以下に提供される。これらの実験で使用される特定の蒸留塔は、水とエタノールを分離するのに通常使用される平均スケールより小さいパイロットプラントであった。実験プラントについてのプロセスおよび計装図（Ｐ＆ＩＤ）２００が図１７に示される。このＰ＆ＩＤは、当業者にとって容易に読取り可能であるため、説明のために必要である場合以外には本明細書で詳細には述べられないものとする。
【０１７７】
アキュミュレータ２０２から出る流れが測定されうるため、速い流れと遅い積分レベル動態を分離可能なカスケード制御戦略が選択された。レベルコンローラ２０４（ＬＩＣ−０９１）と流量コントローラ２０６（ＦＩＣ−１００）との間のこの分離は、一般に頑健性を増加させる。しかし、コントローラ２０４および２０６は共に、この効果が実現されるようにかなりうまくチューニングされなければならない。塔のエネルギー入力が変動するにつれて、プロセスパラメータが変化するため、この要件は、このプラントにおいて挑戦的な課題である。純度を制御する目的で、蒸気流量が底部温度を制御するのに使用されるため、アキュミュレータ２０２内のレベルおよび流量制御ループのプロセスパラメータは、通常動作中に著しく変化しうる。０．５５ｋｇ／分の蒸気流量でプロセスモデルを確定するために、手動段階試験が実施された。段階試験は、以下の初期プロセスモデルをもたらし、初期プロセスモデルは、モデルベースＭＰＣコントローラについての仮定されたモデルとして使用され、０．５５ｋｇ／分の蒸気流量のＰＩＤコントローラについて初期チューニングを提供するのに使用された。
【０１７８】
【数４２】
0005504175.tif 000048
【０１７９】
【数４３】
0005504175.tif 000049
【０１８０】
０．４ｋｇ／分の蒸気流量において、以下のプラントモデルが確定された。
【０１８１】
【数４４】
0005504175.tif 000050
【０１８２】
実験について、通常ＰＩＤコントローラである（ＬＩＣ−０９１）レベルコンローラ２０４は、よく知られているシミュレーションプログラムＭＡＴＬＡＢ（登録商標）において実行されるＭＰＣコントローラと置換えられた。このコントローラは、ＰＩＤコントローラを手動モードの状態のままにし、ＭＡＴＬＡＢ（登録商標）シミュレーションを実行するラップトップコンピュータ上のＯＰＣクライアントからのＯＰＣ書き出しを、プラント２００内で実装されるＤｅｌｔａＶ（商標）コントローラシステム内のＰＩＤコントローラの出力に送出することによって実装された。ＬＩＣ−０９１コンローラ２０４の出力が、２次ＦＩＣ−１００流量コントローラ２０６のカスケード入力に接続されたため、ＬＩＣ−０９１コンローラ２０４への書込みは、ＦＩＣ−１００流量コントローラ２０６の流量設定点を間接的に操作し、最初のプラント構成と等価なカスケード制御挙動を実装した。
【０１８３】
３つの異なる移動ペナルティチューニング（具体的には、Ｑ＝５０、Ｑ＝１００、およびＱ＝１０００）が、ＭＰＣコントローラ２０４で使用され、２つの異なる動作点における（特に、０．４ｋｇ／分の蒸気流量および０．５５ｋｇ／分の蒸気流量における）制御性能が解析された。図１８は、０．５５ｋｇ／分の蒸気流量において３つの異なるチューニング設定を有するＭＰＣコントローラ２０４の３つの異なる運転を示す。このデータは、順次記録され、その後、比較のために重ねられた。ＰＩ制御を実施するために設定された最初のＰＩＤコントローラを使用する運転であった４番目の実験は、ＭＰＣ制御とＰＩＤ制御との比較を可能にするために実施された。ＰＩチューニングパラメータ（利得＝１．５４およびリセット＝１４１．６８秒）は、修正ジグラー・ニコルスチューニングを用いて、プロセスの最終利得、最終期間、およびむだ時間から計算された。この定常状態条件において、４つの異なるコントローラについての標準偏差は、σＱ＝５０＝０．０５７、σＱ＝１００＝０．０６６、σＱ＝１０００＝０．０５２、σＰＩ＝０．０３６であると確定された。
【０１８４】
図１８に示すように、Ｑ＝１０００を有するレベル制御の時間領域プロットは、最も定常であるように見える。Ｑ＝１０００を有するＭＰＣはまた、最小の標準偏差（σＱ＝１０００＝０．０５２）を達成する。現実のプラント設定では、目下の制御変数のプロットは、データを調べる主要な方法であることが多いが、リアルタイム傾向だけから引出される結論は、誤解を招く可能性がある。図１９は、蒸気流量の変化であるように選択された非測定外乱に対してコントローラが反応した仕方を示す。その理由は、このタイプの外乱が、コントローラについて２つ以上の困難さを呈するからである。第１に、このタイプの外乱は、アキュミュレータ２０２に達するコンデンセートの量を変化させ、それにより、コントローラ２０４が、アキュミュレータ出力流量を変化させることが必要となる。第２に、このタイプの外乱は、リフラックス時定数を変化させ、それにより、モデル不一致の量を変化させる。蒸気流量の変化はまた、真の入力外乱であり、実際に産業用プラントでは一般的である。さらに、蒸気流量の変化はまた、非測定型なのが最も一般的でる。（この実験で使用された）人工的な蒸気流量変化と同様の影響を有する異なるプロセス産業からの例は、（１）燃料のＢＴＵ率の変化（温度および温度ループの利得に影響を及ぼす）、（２）フィードストックの濃度および／または組成の変化（塔の負荷、質量均衡、およびエネルギー供給と生成物純度との間の利得に影響を及ぼす）、（３）ボイラ内の管の汚損（プロセス利得を変化させる熱伝達係数と、同じ熱伝達についての必要とされる流量の両方を変化させ、したがって、むだ時間を変化させる）、ならびに、（４）戸外温度の変化および／または嵐の発生（温度を変化させ、同様に大気に対する熱伝達係数を変化させ、したがって、利得を変化させる）を含む。
【０１８５】
いずれにしても、蒸気流量設定点が０．５５ｋｇ／分から０．４ｋｇ／分へ変化した、このシミュレートされた「非測定」プロセス外乱中のコントローラの性能（図１９に示す）は、ＩＡＥＱ＝５０＝０．１２２、ＩＡＥＱ＝１００＝０．４６８、ＩＡＥＱ＝１０００＝∞（この場合、制御は不十分であり、プラントは、手動介入によって安定化されなければならなかった）、およびＩＡＥＰＩ＝０．３となるような性能であった。図１９に示すように、ＭＰＣＱ＝５０およびＭＰＣＱ＝１００のコントローラは、未測定外乱を適度にうまく排除した（それぞれ、ＩＡＥＱ＝５０＝０．１２２、ＩＡＥＱ＝１００＝０．４６８）が、ＭＰＣＱ＝１０００に関しては同じ実験を実施することができなかった。その理由は、大きな移動ペナルティが、このコントローラがレベル降下にタイミングよく反応することを妨げ、アキュミュレータポンプインターロックをトリップさせたからである。ポンプトリップに続いて、アキュミュレータ２０２が急速に充填され過ぎ、コントローラ２０４が反応できず、許容可能でない制御性能をもたらした。
【０１８６】
この実施例は、コントローラ（すなわち、Ｑ＝１０００）の過度に注意深いデチューニングが、おそらく破壊的でありでかつ危険でありうることを示す。ここで、溢流（アキュミュレータのオーバフロー）が、手動のオペレータ介入なしで起こったであろう。スペクトルの他端で、ＭＰＣＱ＝５０の性能のプロットが、安定性のエッジに近いと判定され、そのことが、さらなる実験において真であると判定された。その理由は、高速チューニングが適用される（Ｑ＜５０）か、または、プラントが高い蒸気流量を有する動作領域で運転されると、これらのコントローラが不安定になるからである（図示せず）。
【０１８７】
プラントが０．４ｋｇ／分の蒸気で動作するときについてのプロットは、図２０に示され、コントローラ性能は、σＱ＝５０＝０．０５３、σＱ＝１００＝０．０２８として測定され、Ｑ＝１０００を有するコントローラはプラントを十分に制御せず、σＰＩ＝０．０３２であった。そのため、０．５５ｋｇ／分の蒸気（図１８）の場合に使用されたチューニングと同じチューニングを用いるＭＰＣコントローラは、低い標準偏差を示した。Ｑ＝１０００を有するＭＰＣは、先に述べたように、プラントを十分に制御せず、アキュミュレータポンプインターロックを繰返しトリップさせたため、図１９には示されない。
【０１８８】
要約すると、図１７の蒸留塔の実験的運転は、５０および１００のＭＰＣチューニングパラメータＱ値が、所望の動作領域にまたがる（ここでは、０．４ｋｇ／分から０．５５ｋｇ／分の蒸気）モデル不一致について適していたことを示す。５０より小さいチューニングおよび２００より大きいチューニング（試験したが示さず）は、適していなかった。最適チューニングに関して先に提案したように、モデル不一致の変動する量について理想的なフィードバック制御性能をもたらす特定の一組のチューニングパラメータが見出されうる。これは、たとえプラントモデルに関する新しい知識がなくても実験的に可能であった。モデル再同定またはモデル更新は全く実施されなかった。実際に、仮定されたプラントモデルは、モデルパラメータの値が不正確である可能性が高いだけでなく、モデル形態が、積分プロセス（すなわち、レベル制御ループ）の基礎になるプロセス特性にも一致していない点で、かなり間違っていることがわかっていても、実験を通して使用された。不正確なモデル定式（１次プラスむだ時間）は、モデル不一致が実験中に存在したことを保証するために意図的に選択された。その理由は、実験中に存在したモデル不一致の正確な量を確定することが可能でなかったからである。
【０１８９】
図１７のプロセスについての４つの異なるプロセス状況における４つの異なるコントローラの実験的性能の要約は以下の表６に提供されており、ＭＰＣコントローラは全て、同じモデル仮定に基づいてチューニングされた。ここで、コントローラは、ＰＩコントローラ、ならびに、５０、１００、および１０００のＱ値を有するＭＰＣコントローラであった。表６を見てわかるように、５０のＱ値を有するＭＰＣは、蒸気変化に応答してＰＩコントローラより低いＩＡＥで動作し、一方、１００に設定されたＱを有するＭＰＣは悪化し、１０００のＱ値を有するＭＰＣは、蒸気変化状況に応答して、動作が非常に不完全であった（すなわち、試験されなかった）が、０．５５ｋｇ／分の動作点の制御において最良に動作した。
【０１９０】
【表６】
0005504175.tif 000051
【０１９１】
しかし、プラントの実際の制御では、１つの動作点でプラントを運転している間に、別の動作点へ変化させることが、あるチューニングについての性能にどのように影響を及ぼすことになるかを知ることが重要である。そのため、上記実施例の場合、０．５５ｋｇ／分から０．４ｋｇ／分への蒸気流量変化の前に、Ｑ＝１０００のペナルティチューニングが０．５５ｋｇ／分において最良の制御を示すが、このチューニングが、大きな外乱については不十分であることになり、おそらくプラント運転の停止をもたらすことを、オペレータが知ることができることが重要である。考えられる全てのプロセス領域を手動で通過し、かつ、チューニングが、これらの領域の全てでうまく働くことを判定することは、実行可能であり、モデル同定を必要としない。しかし、この操作は、ある量の浪費されたまたは品質以下の生成物を生成し、プラントモデルが変化する場合、再び行われなければならない可能性があり、モデル不一致に影響を及ぼすパラメータ（複数可）がわかっており、また、（この実施例では蒸気として）操作されうる場合に可能であるに過ぎない。
【０１９２】
しかし、図１６に関して先に説明した自己相関解析の使用は、動作パラメータの考えられる変化を考慮して（また、プラントモデルに対する変化を考慮して）適切なチューニング設定を確定するための、また、これらの変化を考慮して適切であるかまたは最適となる一組のチューニングパラメータを選択するためのトリガーとして使用されうる。特に、予測誤差または制御誤差の誤差解析は、ＭＰＣコントローラがプラントにどれほどよく一致しているか、また、どのタイプのモデル不一致がどの程度存在するかを確定するのに使用されてもよい。図２１〜２５は、この点を説明するために提供される。図２１は、０．５５ｋｇ／分の蒸気の定常状態動作において先に説明した例示的なプラントの３つの異なるチューニング設定のＭＰＣコントローラにおける予測誤差の自己相関の比較を提供する。このプロットから、どのＭＰＣコントローラが、良好なまたは劣悪な品質を示すかに関して決定的な陳述をすることができないように見える。振幅は異なるが、遅れの軸を考慮すると、３つのコントローラチューニング設定が、図１９に示したようにＩＡＥの観点からかなり異なるフィードバック性能を示しても、プロットの任意の１つが、所与の遅れ時間について自己相関性がかなり高いことは示されていない。０．４ｋｇ／分における定常状態動作についての予測誤差の自己相関のプロットは、図２２に提供され、同じジレンマを示す。この事実は、最良の状態更新（最小の予測誤差）が、必ずしも最良のフィードバック制御性能をもたらさないという発見を裏付ける。ここで、Ｑ＝５０を有するＭＰＣは、最小の予測誤差であるが、最悪の積分絶対誤差を示し、Ｑ＝１０００を有するＭＰＣは、最悪の予測誤差を有する最良のＩＡＥを示す。しかし、３つのコントローラ設定間の差は、大きな非測定外乱変化中の予測誤差の自己相関が、図２３に示すように確定されるときに観測することができ、図２３は、０．５５ｋｇ／分から０．４ｋｇ／分への蒸気流量変化の形態の非測定外乱の排除中の、３つの異なるチューニング設定におけるＭＰＣコントローラの予測誤差の自己相関を示す。
【０１９３】
ここで、制御誤差の大きな変化は、普通なら雑音によって消し去られる自己相関プロット間の顕著な差をもたらす。残念ながら、この時点でコントローラが不十分にチューニングされたことを認識しても遅過ぎる。その理由は、大きな外乱が起こる前に、その情報が必要とされるからである。いずれにしても、このプロットは、モデル不一致を判定する基準として自己相関解析を使用する従来技術の手法が、なぜ自己相関の決定的な比較を得るためにプロセス励起を使用するかを示す。一部の方法は、プロセスを乱すパルスを注入するのではなく、非測定外乱変化を待つため、「侵入的でない（ｎｏｎ  ｉｎｔｒｕｓｉｖｅ）」と考えられてもよいが、この実験の０．５５ｋｇ／分の蒸気における定常動作のような定常制御中にうまく機能しないことになる。
【０１９４】
そのため、外乱排除の期間中に制御性能評価を実施するために予測誤差の自己相関を使用することは、プロセスモデル不一致を確定するのに役立つ可能性があるが、定常状態動作の期間中に制御性能評価を実施するために予測誤差の自己相関を使用することは、非常に有用であるわけではないことがわかる。さらに、プロセスアップセット（たとえば、非測定外乱または設定点変化）の時間中に予測誤差の自己相関を使用することは、コントローラ適応／チューニングサイクルをトリガーするのに有用でありうるが、この技法は、依然としてある程度のプロセス変化またはアップセットを必要とし、一般に望ましくない。
【０１９５】
しかし、定常状態動作の期間中に制御誤差の自己相関を調べることが、プロセスモデル不一致の尺度としてうまく働くこと、および、このタイプの誤差解析が、ＭＰＣコントローラの適応／再チューニングのためのトリガーとして使用されてもよいことがわかっている。たとえば、図２４は、純粋な、すなわち、設定点が一定であるフィードバック制御のための制御誤差の自己相関に等価である被制御変数の自己相関を示す。同じ３つのチューニング設定を有するＭＰＣコントローラの動作は、０．５５ｋｇ／分の一定蒸気流量において、（参照比較のために付加された）その流量における最初のＰＩコントローラ性能の動作と共に、図２４に示される。
【０１９６】
図２４から、ＭＰＣＱ＝１０００がかなり目立ち、固有のチューニング問題（たとえば、高い程度のプロセスモデル不一致）を有しているものと判定するのが容易であることが明らかである。特に、Ｑ＝１０００を有する被制御変数の自己相関は、他のコントローラチューニング設定の全てと大幅に異なる。定常動作において、かつ、有意の非測定外乱が無い状態で、このチューニングは、遅れ時間の全ての値についてかなり高い自己相関を示すため、容易に劣悪と同定されうる。この曲線についての最も明らかな識別基準は、曲線が、横座標の一方の側だけに留まり、決してゼロを横切らないことである。
【０１９７】
図２５は、０．５５ｋｇ／分から０．４ｋｇ／分へ変化する蒸気流量に関連する、アキュミュレータレベルに対する外乱が人工的に導入されている間の、同じ誤差解析計算を示す。自己相関の差が議論されうるが、自己相関の差は、非測定外乱が無い状態で実施された自己相関（図２４に示す）と同じ程度に明瞭ではない。しかし、この事実は大きな問題を呈さない。その理由は、適応／チューニングロジックが、自動的に外乱を検出し、これらの２つの異なるシナリオにおいて制御誤差の自己相関を解析することから予測誤差の自己相関を解析することへ切換えて、良好な適応／チューニング始動を実現しうるからである。たとえば、２つの異なるタイプの計算間での切換えは、制御誤差がある閾値を越えるとき（通常、非測定外乱に応答して、または、設定点の変化直後に起こる）に実施されうる。
【０１９８】
先に説明した自己相関解析の簡略化された定性的要約は、以下の表７に提供される。ここで、４つの異なるコントローラについての実験データは、自己相関解析の大きさの程度（すなわち、小、中、および大）の結果の総合指標として表示される。モデル不一致を識別するかまたは同定するのに使用されうる自己相関解析は、これらの解析についての異なるコントローラの自己相関解析の大きさの程度の差のために、中央の２つの列に見出される。特に、表７は、３つの異なるＭＰＣコントローラについての異なる自己相関実験データの定性的推定値の要約を提供し、コントローラは全て同じモデル仮定に基づいてチューニングされている。この表では、ＲＩ（ｋ）は予測誤差の自己相関であり、Ｒｙ（ｋ）は制御誤差の自己相関である。ＰＩコントローラ動作が、比較のために付加されている。
【０１９９】
【表７】
0005504175.tif 000052
【０２００】
一般に、自己相関の大きな値は、大きな量のプロセスモデル不一致であるとみなされる。要約すると、ＭＰＣ設計およびチューニングパラメータの閉ループ適応制御は、被制御変数（複数可）の制御誤差または被制御変数（複数可）の予測誤差などのＭＰＣコントローラ情報の自己相関を解析する方法を使用して引起こされうる。しかし、先に説明したように、自己相関が予測誤差から計算されるか、制御誤差から計算されるかは、大きな差を生む可能性がある。たとえば、予測誤差の自己相関は、設定点変化中、または非測定外乱の排除中に決定的である可能性があるだけであり、一方、制御誤差の自己相関は、定常状態動作中に最も有用である可能性がある。最新の技術水準の適応チューニング方法によって要求されるように、外乱が起こっている最中または起こった後ではなく、非測定外乱が起こる前にプロセス特性に対するチューニングを調整することが最も有用である（ただし、同時に最も挑戦的である）。プロセスモデルを再同定しようとする方法は、通常、プロセス変化に依存し、定常状態動作中にモデル変化を検出できない。こうした変化は、外乱または設定点変化によって引起こされる可能性があり、雑音帯域から識別可能であるように十分に大きくなければならない。そのため、先の説明に基づいて、図１６の自動適応／チューニング方法は、好ましくは、上述した方法で、予測誤差の解析および制御誤差の解析を含むべきである。この解析の結果は、目下のチューニングが、どれほどうまく目下のプロセスに適するかを示す。（同じ一組の設計／チューニングパラメータについて計算された、予想されたまたは以前の自己相関関数と比較して）任意の悪化した自己相関関数は、モデル不一致の増加の結果であるはずであり、新しい適応／チューニングによって、反映または補償されうる。
【０２０１】
図１３に関して述べた適応／チューニング技法で使用するためのモデル不一致に関する有用なフィードバック情報を生成する技法としての自己相関の使用は、各種のプロセスおよびモデルタイプにおいて有用である。遭遇する特定のタイプのモデル不一致に応じて結果が変動する可能性があるが、一般に、最適な設計／チューニング方法が、広い範囲のモデル不一致について計算する設計およびチューニングパラメータ値は、より狭い不一致範囲からもたらされる設計／チューニングパラメータに比べて保存的になる。換言すれば、先に提示した自動化された適応／チューニング方法は、大きなプロセスモデル不一致（または、プロセスモデル不一致の増加）が検出されると、振動および不安定性を防止するためにＭＰＣコントローラをデチューニングし、必要であればいつでも、キックインする自動安全ネットのように働く。一方、自己相関解析が、プロセスモデル不一致の減少を示す場合、新しい適応／チューニングサイクルが、良好な総合制御を実現するための、コントローラ形態およびチューニングパラメータを強化するために実装されてもよい。この自動アプローチは、業界では一般的に行われる、安全であるようにコントローラを予防的にデチューニングすることに比べて明らかに望ましい。その理由は、この自動アプローチが、モデル不一致が小さくかつ遅いときにより速いチューニングを、モデル不一致が大きいときにゆっくりとしたチューニングを適用するからである。
【０２０２】
重要なことには、本明細書に述べる自動適応／チューニング方法は、新しいプラントモデル同定を実施することなく、コントローラモデル不一致に基づいて、モデルベースコントローラによって使用される、形態、コントローラモデル、ならびに設計およびチューニングパラメータを適応させる。したがって、この方法は非常に有用である。その理由は、プラントモデル同定、特に、閉ループプラントモデル同定が、産業用プロセス適用においてかなり侵入的であるかまたは信頼性がないことがわかっているからである。
【０２０３】
図２６は、図１６のシステムと類似しているが、チューニングブロック１１０Ａで使用するための１つまたは複数のモデル不一致または不一致範囲を確定するために、先に説明した誤差解析およびプロセス推定の一方または両方を使用する推定器１３０を含む、閉ループ適応チューニングシステムのさらなる実施形態を示す。ブロック１３０は、それにより、コントローラのいずれかまたは両方の誤差（たとえば、イノベーション）解析およびプロセスプラント解析を使用して、コントローラモデルとプラントとの間のモデル不一致の値またはその範囲の推定値を確定するかまたは検出し、この推定値を使用して、ＭＰＣコントローラ１１２についてのチューニングサイクルを始動してもよい。
【０２０４】
こうして、理解されるように、本明細書に述べる適応チューニング技法は、以下のシナリオで、また、その種々の組合せでコントローラチューニングを適応させるのに使用されてもよい。以下のシナリオとは、（１）新しいプロセスモデルの手動入力に基づくこと、（２）プロセスプラント入力および出力から生成される自動特性推定またはモデル同定に基づくこと、（３）１つまたは複数の新しいモデル不一致またはモデル不一致範囲の手動入力に基づくこと、または（４）状態推定の誤差解析から生成されるモデル不一致（量または範囲）の自動推定に基づくことを含む。
【０２０５】
本発明は、本発明を教授し示すことを意図した特定の例示的な実施形態を参照して述べられたが、開示される適応／チューニングデバイスおよび方法は、これらの実施形態に限定されない。種々の変更、改良、および追加が、当業者によって実装されてもよく、こうした変更、改良、および追加は、本発明の範囲から逸脱しないであろう。
【０２０６】
たとえば、上述した適応／チューニングデバイスおよび方法は、１次プラスむだ時間モデルの形態のプロセスモデルの使用と共に述べられたが、これらの技法は、たとえば、状態空間プロセスモデル、ＡＲＸモデルなどの回帰モデル、有限インパルス応答モデル（ｆｉｎｉｔｅ  ｉｍｐｕｌｓｅ  ｒｅｓｐｏｎｓｅ  ｍｏｄｅｌ）（ＦＩＲ）、ステップ応答モデルなどを含む他のタイプのプロセスモデルを使用しうる。同様に、本明細書に述べる適応／チューニングデバイスおよび方法は、任意の特定の場合の、モデル不一致またはモデル不一致範囲に基づいて、利用可能なＭＰＣモデル、設計パラメータ、およびチューニングパラメータの全てまたは一部だけを使用して、ＭＰＣコントローラを適応させるように働いてもよい。特に、適応／チューニングデバイスおよび方法は、適応／チューニング手法中に、他のパラメータの１つまたは複数を適応させるかまたは変化させることなく、任意の特定の場合またはシナリオに存在する、１つまたは複数の「重要な」モデル、設計パラメータおよび／またはチューニングパラメータに的を絞ってもよい。さらに、本明細書に提供される適応チューニング技法の説明は、単一ループＭＰＣコントローラの文脈で提供されたが、これらの技法は、併せて、または、代わりに、多変数ＭＰＣコントローラ構成に適用可能であり、また、それに拡張されうる。
【０２０７】
さらに、本明細書に述べるように、適応／チューニングブロックおよびコントローラユニットの個々のコンポーネントの分割は、コントローラ実施態様および動作に責任を持つ人々の自由裁量であることを当業者は理解するであろう。これらの機能の全てが、任意の所望の方法でまたは任意の所望のデバイス（複数可）において実装されうることが理解されるであろう。さらに、本明細書に述べる適応／チューニング技法は、好ましくはソフトウェアで実装されるが、その技法またはその任意の部分は、ハードウェア、ファームウェアなどで実装されてもよく、プロセス制御システムに関連する任意の他のプロセッサによって実装されてもよい。そのため、本明細書に述べる要素は、所望に応じて、標準的な多目的ＣＰＵ内で、または、特定用途向け集積回路（ＡＳＩＣ）または他の配線接続されたデバイスなどの特別に設計されたハードウェアまたはファームウェア上に実装されてもよい。ソフトウェアで実装されると、ソフトウェアルーチンが、磁気ディスク、レーザディスク（たとえば、ＣＤ、ＤＶＤなど）、フラッシュドライブまたは他の記憶媒体上、コンピュータまたはプロセッサのＲＡＭまたはＲＯＭ内、任意のデータベース内などのように、任意のコンピュータ読取り可能メモリ内に格納されてもよい。同様に、このソフトウェアは、たとえば、コンピュータ読取り可能ディスク、スマートカードメモリ、フラッシュドライブ、または他の搬送可能なコンピュータ記憶メカニズム上で、あるいは、電話回線、インターネットなどのような通信チャネルを通じた（搬送可能な記憶媒体を介してこうしたソフトウェアを提供することと同じであるかまたは交換可能であるとみなされる）ものを含む、任意の知られているかまたは所望の送出方法を介して、ユーザまたはプロセスプラントに送出されてもよい。
【０２０８】
本明細書に述べる特定のアプローチは、上述した本発明の実施形態からの単なる非実質的な逸脱を示すことも認識される。その結果、本明細書で提供される特許請求の範囲は、本発明の真の精神および範囲内に入る全ての変更、変形、および改良、ならびに、本発明の実質的な等価物を包含すると、適切に解釈される。したがって、本発明の他の実施形態は、本明細書では特に述べられないが、それでも、本発明の範囲内に包含される。
【図１】
0005504175.tif 000053
【図２】
0005504175.tif 000054
【図３】
0005504175.tif 000055
【図４】
0005504175.tif 000056
【図５】
0005504175.tif 000057
【図６】
0005504175.tif 000058
【図７】
0005504175.tif 000059
【図８】
0005504175.tif 000060
【図９】
0005504175.tif 000061
【図１０】
0005504175.tif 000062
【図１１】
0005504175.tif 000063
【図１２】
0005504175.tif 000064
【図１３】
0005504175.tif 000065
【図１４】
0005504175.tif 000066
【図１５】
0005504175.tif 000067
【図１６】
0005504175.tif 000068
【図１７】
0005504175.tif 000069
【図１８】
0005504175.tif 000070
【図１９】
0005504175.tif 000071
【図２０】
0005504175.tif 000072
【図２１】
0005504175.tif 000073
【図２２】
0005504175.tif 000074
【図２３】
0005504175.tif 000075
【図２４】
0005504175.tif 000076
【図２５】
0005504175.tif 000077
【図２６】
0005504175.tif 000078