(57)【特許請求の範囲】
【請求項１】
一組のプロセス制御入力信号から一組のプロセス出力をもたらすプロセスを制御すべくプロセッサにより実行されるプロセス制御ルーチンの一部として用いられるプロセス制御エレメントであって、
コンピュータが実行可能な指示が記憶されるコンピュータ可読媒体と、
前記コンピュータ可読媒体に格納され、前記プロセッサで実行されると前記プロセスの一部である多重入力／多重出力制御を実行する制御エレメントとを備え、
前記制御エレメントは、
前記一組のプロセス制御入力信号から前記プロセス出力のうちの一つに対して、前記プロセス出力のうちの一つに対する定常状態値である予測信号を生成する非線形の第一のプロセスモデルと、
前記プロセス出力に関連する制御変数に対応する信号を受信し、前記制御変数に基づいて一組の制御信号を作成する多重入力／多重出力制御エレメントとを有しており、
前記多重入力／多重出力制御エレメントは、所定の時間範囲において定常状態値を有する前記プロセス出力の各々に対する予測ベクトルを作成する線形の第二のプロセスモデルと、前記プロセス出力のうちの一または複数に対する前記予測信号を用いて、前記第二のプロセスモデルにより作成された前記予測ベクトルに対して前記時間範囲の終点における第一のモデル予測値と第二のモデル予測値との差に一次またはそれより大きい次数の指数関数を乗じることにより得られる数を加えることにより前記第二のプロセスモデルにより作成された前記予測ベクトルを修正するように構成されている補正ユニットとを有してなる、プロセス制御エレメント。
【請求項２】
前記第一のプロセスモデルがニューラルネットワークプロセスモデルである、請求項１記載のプロセス制御エレメント。
【請求項３】
前記多重入力／多重出力制御エレメントがモデル予測制御コントローラであり、前記一組の制御信号が、前記プロセス出力を制御すべく、前記プロセス制御入力信号として伝送されるように構成されている、請求項２記載のプロセス制御エレメント。
【請求項４】
前記多重入力／多重出力制御エレメントがオプチマイザであり、前記一組の制御信号がプロセスコントローラの目標値を有してなる、請求項２記載のプロセス制御エレメント。
【請求項５】
前記時間範囲上の終点における第一のモデル予測値と第二のモデル予測値との差に乗じる一次またはそれより大きい次数の指数関数は、定常状態に達するのに必要なプロセス出力時間を所定の値で割った時間と同等の時定数を含んでいる、請求項１記載のプロセス制御エレメント。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に、プロセス制御システムに関するものであり、さらに詳細には、非線形応答特性を有するプロセス制御システムにおける、モデル予測制御ブロックまたはオプチマイザの如きアドバンスト制御ブロックの利用に関するものである。
【背景技術】
【０００２】
化学プロセス、石油プロセス、または他のプロセスにおいて利用される分散型プロセス制御システムまたはスケーラブルプロセス制御システムの如きプロセス制御システムは、アナログバス、デジタルバス、またはアナログ／デジタルを組み合わせたバスを介して、相互に、少なくとも一つのホストワークステーションもしくはオペレータワークステーションに、および一または複数のフィールドデバイスに対して、通信可能に接続されている一または複数のプロセスコントローラを備えていることが一般的である。これらのフィールドデバイスは、たとえば、バルブ、バルブポジショナ、スイッチ、およびトランスミッタ（たとえば、温度センサ、圧力センサおよび流量センサ）などであり、バルブの開閉およびプロセスパラメータの測定の如きプロセス内の機能を実行しうる。また、プロセスコントローラは、フィールドデバイスにより作成されるプロセス測定値および／またはこれらのフィールドデバイスに関連する他の情報を表す信号を受信し、この情報を利用して制御ルーチンを実行し、次いで、制御信号を生成する。この制御信号は、プロセスの動作を制御すべく上述のバスを介してフィールドデバイスに送信される。フィールドデバイスおよびコントローラからの情報は、オペレータワークステーションにより実行される一または複数のアプリケーションを利用することができるようになっているのが普通であり、このことにより、オペレータは、プロセスの現在の状況の閲覧や、プロセス動作の修正などの如きプロセスに関連するいかなる所望の機能でさえも実行することができる。
【０００３】
これまで、従来型のフィールドデバイスは、アナログバスまたはアナログ回線を介して、プロセスコントローラに対してアナログ（たとえば、４〜２０ミリアンペア）信号を送信し、また、プロセスコントローラからアナログ信号を受信するために利用されていた。これらの４〜２０ｍａ信号は、デバイスにより計測される計測値または、そのデバイスの動作の制御に必要な、コントローラにより生成される制御信号を指示することに実質的に制限されていた。しかしながら、ここ十年、プロセス制御産業では、マイクロプロセッサおよびメモリを備えるスマートフィールドデバイスが普及してきている。プロセス内において主要な機能を実行することに加えて、スマートフィールドデバイスは、デバイスに関するデータを格納し、デジタル形式またはデジタルとアナログとを組み合わせた形式でコントローラおよび／または他のデバイスと通信し、自己校正、識別、診断などの如き補助的な機能を実行する。異なる製造業者により製造されたスマートフィールドデバイスを同一のプロセス制御ネットワーク内で一緒に用いることを可能にするために、ＨＡＲＴ（登録商標）プロトコル、ＰＲＯＦＩＢＵＳ（登録商標）プロトコル、ＷＯＲＬＤＦＩＰ（登録商標）プロトコル、Ｄｅｖｉｃｅ−Ｎｅｔ（登録商標）プロトコル、およびＣＡＮ（登録商標）プロトコルの如き複数の標準型かつ開放型のスマートフィールドデバイス用の通信プロトコルが開発されてきている。さらに、ＦＯＵＮＤＡＴＩＯＮ（登録商標）Ｆｉｅｌｄｂｕｓ（以下、「Ｆｉｅｌｄｂｕｓ」と呼ぶ）プロトコルとして知られている、Ｆｉｅｌｄｂｕｓ  Ｆｏｕｎｄａｔｉｏｎにより普及されている全デジタル式の２線式バスプロトコルは、さまざまなフィールドデバイスに設置される機能ブロックを用いて、従来中央コントローラ内で実行されてきた制御機能を実行する。この場合、Ｆｉｅｌｄｂｕｓフィールドデバイスは一または複数の機能ブロックを格納・実行することができる。各機能ブロックは、（同一のデバイス内かまたは異なるデバイス内の）他の機能ブロックからの入力の受信および／またはその他の機能ブロックに対する出力の送信を行い、プロセスパラメータの計測もしくは検出、デバイスの制御、または比例・微分・積分（ＰＩＤ）制御ルーチンの実行などの制御機能の実行の如き何らかのプロセス制御機能を実行する。プロセス制御システム内の異なる機能ブロックは、一または複数のプロセス制御ループを形成するために、（たとえば、バスを介して）相互に通信するように構成されており、これらのプロセス制御ループの個々の操作は、プロセス全体にわたり分散、すなわち非集中化されている。
【０００４】
いずれの場合であっても、プロセスコントローラ（またはフィールドデバイス）は、通常、流量制御ループ、温度制御ループ、圧力制御ループなどの如き、プロセスに対して定義されるまたはプロセス内に実装される複数のさまざまなループの各々に対して、さまざまなアルゴリズム、サブルーチン、制御ループ（これらはすべて制御ルーチンである）を実行するようにプログラムされている。一般的にいえば、このような制御ループのそれぞれは、アナログ入力（ＡＩ）機能ブロックの如き一または複数の入力ブロックと、比例・微分・積分（ＰＩＤ）制御機能ブロックまたはファジー論理制御機能ブロックの如き単一出力制御ブロックと、アナログ出力（ＡＯ）機能ブロックの如き単一出力ブロックとを備えている。これらの制御ループは、単一プロセス入力を制御するために用いられるバルブ位置などの如き単一制御出力を制御ブロックが生成するので、単一入力／単一出力制御を実行することが一般的である。しかしながら、特定の場合には、一を超える単一プロセス入力により被制御プロセス変数またはプロセス出力が影響を受けるので、そして事実上、各プロセス入力が複数のプロセス出力の状態に対して影響を与えうるので、独立に動作する単一入力制御ループ／単一出力制御ループを複数利用することが非常に効果的であるとは言えない。このような例としては、たとえば、二つの流入配管により充填され、単一の流出配管により空にされるタンクを備えたプロセスにおいて、各配管が異なるバルブにより制御され、タンクの温度、圧力、および処理量が所望の数値またはその近傍になるように制御されるような場合が挙げられる。上述のように、タンクの処理量、温度、および圧力の制御は、個別の処理制御ループ、個別の温度制御ループ、および個別の圧力制御ループを用いて実行されうる。しかしながら、この場合、温度制御ループが、タンク内の温度を制御するために入力バルブの一つの設定を変えるよう作動すると、タンク内の圧力が上昇し、これにより、例えば圧力ループが圧力を下げるために排出バルブを開放しうる。それに続いて、この動作により、処理量制御ループが入力バルブの一つを閉鎖し、このことが温度に影響を与え、そのため温度制御ループがまた別の動作をしうる。この例から理解されるように、単一入力／単一出力制御ループは、プロセス出力（この場合は処理量、温度および圧力）を安定した状態に決して達することなく振動させてしまうことがあり、このようなことは好ましくない。
【０００５】
このような状況においてプロセス制御を行うべく、従来、モデル予測制御（ＭＰＣ）または他のタイプのアドバンスト制御が用いられてきた。一般的に、ＭＰＣとは、複数のプロセス入力の各々の変化が複数のプロセス出力の各々に与える影響を測定し、次いで、この測定された応答を用いてプロセスの線形モデルを作成する多重入力／多重出力式の制御戦略のことである。そのプロセスの線形モデルは、まず、数学的にインバートされ、次いで、多重入力／多重出力コントローラとしてまたはその中で用いられ、プロセス入力に対して加えられる変化に基づいてプロセス出力を制御する。場合によっては、プロセスモデルは、各プロセス入力に対するプロセス出力応答曲線を有しており、これらの曲線は、例えば各プロセス入力に提供される一連の擬似ランダムステップ変化に基づいて作成されうる。これらの応答曲線は、公知の方法でプロセスをモデル化するために用いることができる。モデル予測制御は、当該技術分野では公知であるので本明細書内では詳細な内容の説明は省略するが、クイン、エス．ジョー（Qin, S. Joe）およびトーマスエー．バッジウェル（Thomas A. Badgwell）による「産業用モデル予測型制御技術の展望」（An Overview of Industrial Model Predictive Control Technology）、エーアイシーエイチイー会議（AIChE Conference）、１９９６年、に記載されている。さらに、本明細書において参照することによりここで明示的にその内容を援用する米国特許第6,445,963号には、プロセス制御に用いるプロセス制御システムにモデル予測制御ブロックを統合する方法が開示されている。
【０００６】
モデル予測制御ブロックは、線形技術を用いて一般的にモデル化されうる挙動を有するような標準的なプロセスにおいて非常に効果的に機能するが、非線形挙動を示すまたはプロセスに伝達される制御入力に対して非線形の関係を有するプロセスの制御に対して（またはその出力を利用して）、モデル予測制御ブロックを用いることは困難である。一般的に、非線形プロセス用のＭＰＣアプリケーションは、ＭＰＣブロック内において、非線形最適化を提供し、非線形コントローラの生成を含み、また、線形モデルの代わりに非線形モデルの用いるように構成される必要があると考えられている。たとえば、ＭＰＣブロックに対する入力またはＭＰＣからの制御出力を非線形プロセスに適合させるべく、線形ＭＰＣ技術を連結させることにより非線形モデル化を実現することが知られている。このような非線形モデル化は、第一原理モデル、高忠実シミュレーション、非線形ゲインと非線形ダイナミックスとの組み合わせ（ウイーナ（Ｗｉｅｎｅｒ）モデルもしくはハマーシュタイン（Ｈａｍｍｅｒｓｔｅｉｎ）モデル）、またはニューラルネットワークモデルの形態を取りうる。さらに、プロセス制御ルーチンの各スキャン中にプロセスモデルのゲインを再計算すべくニューラルネットワークを用いて、非線形機能を含むようにＭＰＣ技術を適応させることが知られている。しかしながら、ゲインの再計算は、煩雑であり、さらなるモデル誤差の原因となる、プロセスモデルの導関数の算出を必要とし、計算費用が高く、実行に時間がかる。このように、ＭＰＣを適応させるこの方法は、ＭＰＣロジック内で実現させることが困難かつ煩雑であり、ほとんどのプロセスプラントにおいて、おそらく、まったく正当化されずまた実用化もされていないであろう。
【０００７】
このような問題がモデル予測コントローラの場合に存在しているが、同一のまたは同様の問題が、ニューラルネットワークコントローラ、多変数ファジーロジックコントローラ、実時間オプチマイザなどの如き他の高度の多重入力／多重出力用の制御ブロックまたは制御システムの開発および利用においても存在する。
【発明の開示】
【課題を解決するための手段】
【０００８】
モデル予測制御ルーチンの如き多重入力／多重出力制御ルーチンは、一または複数の出力に対して予測ベクトルを生成する概ね線形なプロセスモデルと、これらの一または複数のプロセス出力に対する予測ベクトルの補正に用いられるとともに予測ベクトルまたは定常状態予測値でありうる予測信号を生成する非線形プロセスモデルとを備えている。補正済み予測ベクトルは、プロセスを制御する一組の制御信号を生成すべく通常の方法で用いられる。このような非線形プロセスモデルとモデル予測制御ルーチンの如きアドバンスト制御ルーチンは、公知のかつ比較的簡便な方法で開発・操作されうる。このことにより、非線形特性を有するプロセスを制御する場合に、このシステムの各々が実装・利用される。さらに、このシステムは、非線形モデルを多重入力／多重出力制御ブロックに統合するための変更、またはこの多重入力／多重出力制御ブロックにより使用されるコントローラゲインを再計算するための変更を行う必要がない。さらに、この非線形プロセスモデルは、（一または複数の入力に対して一つの出力というような非線形特性を一般的に反映しているので、）開発が容易であり、概して、プロセスの動作全体にわたり同一のままでありうる。
【０００９】
一つの実施例では、一組のプロセス制御入力信号から一組のプロセス出力がもたらされるプロセスの制御に用いられるように構成されるプロセスコントローラは、前記一組のプロセス制御入力信号を生成すべく前記プロセス出力の表示情報を受信するように構成された多重入力／多重出力コントローラと、前記プロセス出力のうちの一つに対して予測信号を生成すべく前記一組のプロセス制御入力信号を受信するように構成された、非線形プロセスモデルでありうるプロセスモデルとを備えている。コントローラ、オプチマイザなどでありうる前記多重入力／多重出力制御エレメントは、前記プロセス出力の各々に対して予測ベクトルを作成する、標準型線形プロセスモデルでありうる他のプロセスモデルと、前記プロセス出力のうちの一つに対する前記予測信号を用いて、前記プロセス出力のうちの一つに対する前記予測ベクトルを修正することにより前記プロセスの非線形性を調整するように構成された補正ユニットとを備えている。
【発明を実施するための最良の形態】
【００１０】
まず、図１を参照すると、プロセス制御システム10はプロセスコントローラ12を備えており、該プロセスコントローラ12は、通信ネットワーク18を介して、データヒストリアン14と、（各々が表示スクリーン17を有する任意の種類のパーソナルコンピュータ、ワークステーションなどでありうる）一または複数のホストワークステーションまたはホストコンピュータ16と接続されている。また、コントローラ12は、入力／出力（Ｉ／Ｏ）カード28、29を介して、フィールドデバイス20〜27に接続されている。通信ネットワーク18は、たとえば、イーサネット型通信ネットワークであってもその他の適切なまたは所望の通信ネットワークであってもよく、データヒストリアン14は、データを格納するための任意の所望の種類のメモリと任意の所望または公知のソフトウェア、ハードウェア、またはファームウェアとを有するいかなる所望の種類のデータ収集ユニットであってもよい。フィッシャーローズマウントシステムズ社により販売されているＤｅｌｔａＶ（登録商標）コントローラなどでありうるコントローラ12は、たとえば、標準型４〜２０ｍａデバイスと関連する、および／または  Ｆｉｅｌｄｂｕｓプロトコル、ＨＡＲＴプロトコルなどの如きスマート通信プロトコルと関連する、所望のハードウェアおよびソフトウェアを用いてフィールドデバイス20〜27に通信可能に接続されている。
【００１１】
フィールドデバイス20〜27は、センサ、バルブ、トランスミッタ、ポジショナなどのいかなる種類のデバイスであってもよく、Ｉ／Ｏカード28、29は、任意の所望の通信プロトコルまたはコントローラプロトコルに準拠するいかなる種類のＩ／Ｏデバイスであってもよい。図１に例示されている実施例では、フィールドデバイス20〜23は、アナログ回線を通じてＩ／Ｏカード28に通信する標準型４〜２０ｍａデバイスかまたはアナログ回線とデジタル回線を組み合わせたものを通じてＩ／Ｏカード28に通信するＨＡＲＴデバイスであり、フィールドデバイス24〜27は、Ｆｉｅｌｄｂｕｓプロトコル通信を用いて、デジタルバスを介してＩ／Ｏカード29と通信する、Ｆｉｅｌｄｂｕｓフィールドデバイスの如きスマートデバイスである。一般的にいえば、Ｆｉｅｌｄｂｕｓプロトコルとは、フィールドデバイスを相互接続する２線式のループまたはバスに対して標準型物理インターフェイスを供する、全デジタル型シリアル式双方向通信プロトコルのことである。要するに、Ｆｉｅｌｄｂｕｓプロトコルは、プロセス内のフィールドデバイスにローカルエリアネットワークを提供し、このことで、これらのフィールドデバイスは、プロセス設備全体にわたりさまざまな場所でプロセス制御機能を（Ｆｉｅｌｄｂｕｓプロトコルに準拠して定義された機能ブロックを用いて）実行することが可能になり、また、総合的制御戦略の実行のために、これらのプロセス制御機能の実行の前後において相互に通信することが可能になる。もちろん、フィールドデバイス20〜27は、将来開発されるいかなる規約またはプロトコルをも含むその他の所望の規約またはプロトコルに準拠してもよい。
【００１２】
コントローラ12は、その内部にまたはそれと関連するプロセッサ12aを有し、任意の所望の方法でプロセスを制御すべく、デバイス20〜27、ホストコンピュータ16、およびデータヒストリアン14と通信する。プロセッサ12aは、コンピュータ読み取り可能メモリ12bに格納されかつ制御ループを含みうるプロセス制御ルーチンを実現または実行する。なお、本明細書に記載される制御ルーチンまたは制御エレメントは、そのうちのいずれであっても、所望の場合には、その一部を、フィールドデバイス24〜27のうちの一または複数の如き別のコントローラまたは他のデバイスのプロセッサにより実現または実行されてもよい。同様に、プロセス制御システム10内で実現されように本明細書で記載されている制御ルーチンまたはエレメントは、ソフトウェア、ファームウェア、またはハードウェアなどを含むいかなる形態を有してもよい。本発明の目的の場合、プロセス制御エレメントは、コンピュータ読取り可能媒体に格納されるたとえばルーチン、ブロック、またはモジュールを含む、プロセス制御システムのいかなる部品または一部分であってもよい。モジュール、またはサブルーチン、サブルーチンの一部分（たとえば、コード行）などのごとき制御プロシージャの一部分でありうる制御ルーチンは、ラダーロジック、シーケンシャル機能チャート、機能ブロック線図、またはその他のソフトウェアプログラミング言語または設計パラダイムの利用の如き、いかなる所望のソフトウェア形態で実現してもよい。同様に、制御ルーチンは、たとえば、一または複数のＥＰＲＯＭ、ＥＥＰＲＯＭ、特定用途集積回路（ＡＳＩＣ）、またはその他のハードウェアエレメントもしくはファームウェアエレメント内にハードコード化されてもよい。さらに、制御ルーチンは、画像設計ツールまたはその他の種類のソフトウェア／ハードウェア／ファームウェア用のプログラミングツールもしくは設計ツールを含むいかなる設計ツールを用いて設計されてもよい。したがって、いうまでもなく、コントローラ12は、いかなる所望の方法で、制御戦略または制御ルーチンを実現するように構成されてもよい。
【００１３】
一つの実施例では、コントローラ12は、一般的に機能ブロックと呼ばれているものを用いて制御戦略を実行する。この戦略において、各機能ブロックは、全体の制御ルーチンの一部分（すなわち、サブルーチン）であり、（リンクと呼ばれる通信を介して）他の機能ブロックと協働して動作することによりプロセス制御システム10内のプロセス制御ループを実行する。機能ブロックは、通常、トランスミッタ、センサ、または他のプロセスパラメータ測定デバイスに関連する入力機能の如き入力機能や、ＰＩＤ制御、ファジーロジック制御などを実行する制御ルーチンに関連する制御機能の如き制御機能、またはバルブの如きなんらかのデバイスの動作を制御する出力機能のうちの一つを実行し、プロセス制御システム10内でなんらかの物理的機能を実行する。もちろん、ハイブリッド機能ブロックおよび他の種類の機能ブロックも存在する。機能ブロックが、標準型４〜２０ｍａデバイスや、ＨＡＲＴデバイスの如きある種のスマートフィールドデバイスに対して用いられるかもしくはこれらと関連している場合には、通常、これらの機能ブロックは、コントローラ12に格納されそれにより実行されてもよく、それがＦｉｅｌｄｂｕｓデバイスである場合には、スマートフィールドデバイスそれ自体に格納されそれにより実行されてもよい。本明細書では、機能ブロック制御戦略を用いて制御システムを説明しているが、制御戦略または制御ループもしくは制御モジュールは、さらに、ラダーロジック、シーケンシャル機能チャートなどの如き他の規約を用いて、またはその他の所望のプログラミング言語またはプログラミングパラダイムを用いて実現または設計されてもよい。
【００１４】
図１の拡大ブロック線図30に例示されているように、コントローラ12は、ルーチン32、34として例示されている複数の単一ループ制御ルーチンを有しうるし、また所望ならば、制御ループ36として例示されている一または複数のアドバンスト制御ループを実装してもよい。このようなループの各々は、通常、制御モジュールと呼ばれている。単一ループ制御ルーチン32、34は、適切なアナログ入力（ＡＩ）機能ブロックおよびアナログ出力（ＡＯ）機能ブロックに接続された単一入力／単一出力式ファジー論理制御ブロックを用いて信号ループ制御を実行し、単一ループ制御ルーチン34は、適切なアナログ入力（ＡＩ）機能ブロックおよびアナログ出力（ＡＯ）機能ブロックに接続された単一入力／単一出力ＰＩＤ制御ブロックを用いて信号ループ制御を実行するものとして示されている。これらの機能ブロックは、バルブの如きプロセス制御デバイス、温度トランスミッタおよび圧力トランスミッタの如き測定デバイス、またはプロセス制御システム10内のその他のデバイスと関連付けされうる。アドバンスト制御ループ36は、複数のＡＩ機能ブロックに通信可能に接続された入力と複数のＡＯ機能ブロックに通信可能に接続された出力とを有するアドバンスト制御ブロック38を含むものとして例示されているが、アドバンスト制御ブロック38の入力および出力は、他の種類の入力を受信し、他の種類の制御出力を送信する目的で、その他の所望の機能ブロックまたは制御エレメントと通信可能に接続されてもよい。アドバンスト制御ブロック38は、本明細書において以下でさらに詳細に記載する非線形入力／出力特性を示すプロセスを制御するように構成され、一般的に、（通常、二つ以上のプロセス入力に制御信号を供給することにより二つ以上のプロセス出力を制御すべく用いられる）任意のタイプの多重入力／多重出力制御ルーチンと、プロセスの非線形特性を正確にモデル化すべく作成される一または複数の非線形プロセスモデルまたはアドバンストプロセスモデルとを備えている。したがって、本明細書ではアドバンスト制御ブロックがモデル予測制御（ＭＰＣ）ブロックを用いるものとして記載されているが、このアドバンスト制御ブロックは、ニューラルネットワーク制御ブロック、多重変数ファジーロジック制御ブロック、実時間オプチマイザブロックなどの如きその他の多重入力／多重出力ブロックを組み込んでも利用してもよい。
【００１５】
いうまでもなく、一または複数の相互接続された機能ブロックとして実現されうるアドバンスト制御ブロック38を含む、図１に例示されている機能ブロックは、コントローラ12により実行されてもよく、それに代えて、ワークステーション16のうちの一つもしくはフィールドデバイス24〜27のうちの一つの如きその他の処理装置内に設置されそれにより実行されてもよい。
【００１６】
図１に例示されているように、ワークステーション16のうちの一つは、アドバンスト制御ブロック生成ルーチン40を備えており、該ルーチンは、実質的に米国特許第6,445,963号に記載されている方法で、アドバンスト制御システム38を作成し、ダウンロードし、実行すべく用いられうる。上記の引例特許は、本発明の譲受人に譲渡されており、本明細書で参照することによりここで明示的に援用される。唯一の違いは、図２〜図６に関連して本明細書でさらに詳細に記載されるように、アドバンスト制御システムの作成において、アドバンスト制御システム38のうちのＭＰＣコントロールブロックに通信可能に接続される部分として、一または複数のニューラルネットワークプロセスモデルの如き一または複数の非線形プロセスモデルを作成・ダウンロードするために、ルーチン40がさらに用いられるということである。アドバンスト制御ブロック生成ルーチン40は、ワークステーション16内のメモリに格納され、ワークステーション16内のプロセッサにより実行されてもよいが、これに加えてまたはこれに代えて、該ルーチン（またはその一部）は、所望の場合には、プロセス制御システム10内のその他のデバイスに格納され、それにより実行されてもよい。
【００１７】
図２は、プロセスに通信可能に接続されているアドバンスト制御システム38の一つの実施例を示しているブロック線図である。一般的にいえば、図２のアドバンスト制御システム38は、定常状態非線形プロセスモデルでありうる非線形プロセスモデル42を備えている。この非線形プロセスモデル42は、図２においてＭＰＣ制御ブロック44として例示されている多重入力／多重出力制御ブロックに通信可能に接続されている。（制御および制約用の測定値またはパラメータ値でありうる、）プロセスプラント50のプロセス出力48は、ＭＰＣ技術において一般的であるように、ＭＰＣブロック44の入力部に供給される。同様に、一組の測定されたまたは既知のプロセス外乱入力52が、公知のＭＰＣ技術において一般的であるように、プロセスプラント50とＭＰＣブロック44の入力部との両方に与えられる。ＭＰＣ制御ブロック44は、プロセス50の非線形特性に対する補正を行うために非線形プロセスモデル42により作成される一または複数の予測信号を使用するということ以外は、線形プロセスモデルを内部に有する標準型のＭＰＣロジックを備えてもよいし、また一組のプロセス制御信号または操作変数制御信号54を作成するために標準のまたは公知の方法で通常動作してもよい。図２に例示されているように、非線形プロセスモデル42は、それ自体に対する入力として、ＭＰＣブロック44により作成される操作変数制御信号54とプロセス50に与えられる外乱入力52とを含む、プロセスプラント50に対する一組のさまざまな入力を受信する。また、プロセスモデル42は、プロセス50の現在の出力に基づいてモデル出力調整を実行するために当該プロセスモデル42が用いうるプロセス出力48を受信しうる。たとえばニューラルネットワークプロセスモデルでありうる非線形プロセスモデル42は、入力56とプロセス50の非線形入力／出力特性をより精確にモデル化するプロセスモデルとを用い、一または複数の予測信号60を生成し、これらの予測信号60をＭＰＣブロック44に与える。ＭＰＣブロック44は、非線形プロセス特性が存在しているにもかかわらずプロセスを制御するためにさらに正確なまたは有用な一組の操作変数制御信号54を作成すべく、プロセス出力48の一または複数に対して複数の将来値を予測する定常状態予測信号または定常状態予測ベクトルでありうる予測信号60と併せて標準型ＭＰＣロジックを用いる。
【００１８】
上記の非線形プロセスモデル42がＭＰＣブロック44に対して三つの予測信号60を供与するものとして図２に例示されているが、プロセスモデル42は、ＭＰＣブロック44に対して、一つのみの予測信号60を含むその他の数の予測信号を供与してもよい。もちろん、ＭＰＣブロック44に与えられてそれにより用いられる非線形プロセスモデル42の出力の実際の数は、プロセス50の非線形性、さらに詳細にいえば、プロセス入力52、54のうちの一または複数とプロセス出力48との間の非線形関係に依存する。
【００１９】
図３は、非線形プロセスモデル42とプロセス50とに接続される場合のＭＰＣブロック44をさらに詳細に例示している。図３に例示されているＭＰＣブロック44は、出力と同じ数の入力を有するいかなる標準的なＭ×Ｍ正方型の（Ｍは1以上の任意の数でよい）ＭＰＣルーチンまたはプロシージャであってよい。しかしながら、所望ならば、ＭＰＣブロック44は、出力とは異なる数の入力を有しても、すなわち非正方型であってもよい。図３のＭＰＣブロック44は、入力として、プロセス50内で測定されるＮ個の制御変数ＣＶおよび補助変数ＡＶ（値のベクトル）よりなるセットと、将来のある時点でプロセス50に与えられる周知のまたは予想される変化または外乱である外乱変数ＤＶのセットと、オペレータ、オプチマイザなどの如き任意の所望の供給源から与えられる定常状態目標制御変数ＣＶTおよび定常状態目標補助変数ＡＶT（たとえば、設定値）よりなるセットとを受信する。ＭＰＣブロック44は、これらの入力を用いてＭ個の操作変数ＭＶよりなるセットを（制御信号の形式で）作成し、プロセス入力として操作変数ＭＶ信号を供給してプロセス50を制御する。いうまでもなく、ＭＰＣブロック44は、いかなる所望の形態で操作変数信号ＭＶのセットを生成してもよく、これらの操作変数信号ＭＶは、プロセス50の制御入力に接続されうる他の機能ブロックへいかなる方法で提供されてもよい。
【００２０】
公知のように、ＭＰＣブロック44は、制御予測プロセスモデル70を有しており、この制御予測プロセスモデル70は、Ｎ×(Ｍ＋Ｄ)ステップ応答行列であってもよい（ここで、Ｎは制御変数ＣＶ（プロセス出力）の数に補助変数ＡＶの数を加えた数、Ｍは操作変数ＭＶの数、Ｄは外乱変数ＤＶの数）。制御予測プロセスモデル70は、出力回線72上で、制御変数ＣＶおよび補助変数ＡＶの各々に対して予め算出される予測値を生成し、ベクトル加算器74は、現時刻に関するこれらの予測値を実際に測定された制御変数ＣＶおよび補助変数ＡＶの値から差し引いて、入力76上にエラーベクトルまたは補正ベクトルを生成する。
【００２１】
次いで、制御予測プロセスモデル70は、（プロセス入力のステップ変化の応答により得られた、Ｍ＋Ｄ個のプロセス入力の各々に対するＮ個のプロセス出力の各々の時間応答を有しうる）Ｎ×(Ｍ＋Ｄ)ステップ応答行列を用いて、制御予測プロセスモデル70の他の入力に対して提供された外乱変数値および操作変数値に基づく、予測区間における制御変数ＣＶおよび補助変数ＡＶの各々の将来の制御パラメータ値を予測する。また、一般的にプロセス入力の各々に対するプロセス出力の各々の応答を定義した伝達関数を有する線形プロセスモデルである制御予測プロセスモデル70は、予測区間の終点におけるプロセス出力の予測定常状態値を予測する。予測区間までのかつそれを含むプロセス出力の各々に対する予測値のセットは、そのプロセス出力の予測ベクトルである。しかしながら、これらの予測ベクトルが線形モデルまたはステップ応答モデルに基づいているので、この予測ベクトルは、特定のプロセス出力とプロセス入力との間の非線形特性または非線形関係を考慮またはモデル化していない。具体的にいえば、プロセスモデルブロック70により通常実行される直線またはステップ応答曲線を用いて、プロセス入力のうちの一つとそのプロセス出力との間の関係を正確にモデル化することはできない。したがって、プロセス出力のうちの一または複数がプロセス入力の一または複数に対して非線形関係を呈する場合、これらの非線形性がモデル化されないので、プロセスモデルブロック70により作成される予測ベクトルは正確でない。
【００２２】
このような非線形性を補正するために、補正ユニットまたは補償ユニット78は、非線形プロセスモデル42により生成された（、各々が、将来のさまざまな時点における複数の予測値を有する単一の定常状態予測値または予測ベクトルでありうる）予測信号60を受信・利用し、非線形制御変数および補助変数（プロセス出力）の各々に対するプロセス非線形性を組み入れたまたは考慮に入れた補正済み予測ベクトルを生成する。いうまでもなく、補正ユニット78は、非線形プロセスモデル42により作成される異なる予測信号60を用いて、各々の制御変数予測ベクトルまたは補助変数予測ベクトル（すなわち、各プロセス出力予測ベクトル）を別々に補正しうる。さらに、補正ユニット78は、プロセス入力のうちの一または複数と非線形関係を示すプロセス出力の予測ベクトルを補正する必要があるのみでよく、線形予測プロセスモデル70によりその他の線形プロセス出力の各々に対して作成される予測ベクトルは変更せずにそのままにしておけばよい。この場合、たとえば、非線形プロセスモデル42は、プロセス入力（操作変数または外乱変数）の一または複数と非線形関係を示す、ＭＰＣブロック44により用いられる制御変数と補助変数とからなるサブセットの各々に対して、別々のまたは異なる予測信号60を作成し、補正ユニット78は、上述のサブセット内のプロセス出力に対する予測ベクトルの各々を別々に補償する一方で、制御予測プロセスモデル70により作成されるその他のプロセス出力ベクトルをそのままにしておく。
【００２３】
また、ＭＰＣブロック44は、制御目標ブロック80を備えており、この制御目標ブロック80は、ブロック38に対して事前に確立されている軌道フィルタ82を用いて、与えられたＮ個の目標制御変数ＣＶTおよび目標補助変数ＡＶT（目標プロセス出力）の各々に対して制御目標ベクトルを決定する。具体的にいえば、軌道フィルタ82は、制御変数および補助変数が、時間とともに徐々に各自の目標値へと移動させられる方法を定めるユニットベクトルを提供する。制御目標ブロック80は、このユニットベクトルと目標変数ＣＶTおよびＡＶTを用いて、予測区間の時間により定められる期間にわたり目標変数ＣＶTおよびＡＶTの変化を定める、制御変数および補助変数（プロセス出力）の各々に対する目標ベクトルを作成する。次いで、ベクトル加算器84は、上記の目標ベクトルから制御変数ＣＶおよび補助変数ＡＶ（プロセス出力）の各々に対する補正済み予測ベクトルを差し引き、当該制御変数ＣＶおよび補助変数ＡＶ（プロセス出力）の各々に対するエラーベクトルを定める。次いで、制御変数ＣＶおよび補助変数ＡＶの各々のエラーベクトルは、ブロック86内のＭＰＣアルゴリズムに提供され、例えば、予測区間上における最小２乗誤差を最小化する操作変数ＭＶのステップを選択する。もちろん、ＭＰＣアルゴリズムブロック86は、ＭＰＣブロック44に入力されるＮ個の制御変数入力および補助変数入力とＭＰＣブロック44から出力されるＭ個の操作変数出力との関係から作成されるＭ×Ｍのプロセスモデルまたは制御行列を用いてもよい。これらの関係は、ブロック70により用いられる制御行列の逆行列を算出することにより通常決定され、この逆行列化のプロセスは、多大な時間を必要とし、かつ、プロセス50の動作中での再生が困難である。
【００２４】
もちろん、ＭＰＣアルゴリズムブロック86は、プロセス出力（制御変数ＣＶおよび補助変数ＡＶ）を所望の設定値ＣＶT、ＡＶTに一致させるべく、プロセス50に伝送される一組の操作変数をいかなる公知の方法で動作して決定してもよい。制御ブロック86が、正方プロセスモデルから作成される正方制御行列を含むものとして例示されているが、これに限定されなくともよい。すなわち、所望ならば、非正方制御行列を利用してもよい。いうまでもなく、このような非正方制御行列の作成には複雑な数学的な手順が必要となるので、このような非正方制御行列を決定することは一般的に困難である。しかしながら、ブロック86により用いられる制御行列は、一般的に線形プロセスモデル、すなわちブロック70内で用いられる線形プロセスモデルにより作成されるので、プロセス50の制御出力を迅速に所望の設定値に一致させる正確な操作信号または制御信号を生成しない。しかしながら、作成されてＭＰＣアルゴリズムブロック86に提供されるエラー信号が補正ユニット78によりプロセス出力の非線形性を考慮するので、ＭＰＣアルゴリズムブロック86は、概ね許容可能な方法で、プロセス出力を所望の設定値に一致させる。
【００２５】
さらに、所望の場合には、ＭＰＣブロック44は、該ＭＰＣブロック44の動作を最適化するオプチマイザを備えてもよいしそれと一緒に実行されてもよい。このようなオプチマイザのうちの一例が、２００２年９月１１日に出願され、公開されている、表題が「プロセス制御システムにおけるモデル予測制御および最適化の統合化」である米国特許出願番号第10/241,350号に記載されている。この引用特許は、本発明の譲受人に譲渡されており、その内容は、本明細書内で引用することによりここで明示的に援用される。ここで重要なことは、ＭＰＣブロック44が、いかなる所望のまたは公知の方法によってでも動作または機能しうるが、線形プロセスモデルを用いて作成される予測プロセス出力ベクトルを、プロセス50の制御に用いられる一または複数の操作（制御）信号の作成に上記予測ベクトルが用いられるまえに、非線形プロセスモデルまたは高精度プロセスモデルにより作成される予測信号で補正する補正ユニット78を内蔵しているということである。
【００２６】
図４は、プロセス出力ＣＶのうちの一つに対する予測ベクトル（大きさ−時間）が線形プロセスモデルで作成され補正ユニット78により補正されるのをプロットしたグラフ90を示している。一般的にいえば、グラフ90の線92は、予測区間の時間（ｋ＋ｐ）までの経過時間にわたって、プロセスの最終スキャン中（すなわち、時間（ｋ−１）中）に作成された、プロセス出力ＣＶに対する予測ベクトルを表している。それぞれのコントローラのスキャン時間または実行時間ｋにおいて、時間ｋ−１の予測ベクトル92は、線94により表されているように、三つのステップで更新され、時間ｋの予測ベクトルを生成する。具体的にいえば、（時間ｋ−１において作成された）予測ベクトル92は、ｋ−１からｋまでの時間変化を考慮すべく、１スキャン分左側にシフトされる。次いで、プロセス出力ＣＶを引き起こすプロセス入力の現在の変化量に応じてスケールが決定されるステップ応答量が、シフトされた予測ベクトル92に加えられ、予測ベクトル94が生成される。次いで、時間ｋにおける現在の測定プロセス出力値と一致させるために、予測ベクトル94の全体が、現時刻ｋにおけるポイントまでシフトまたは移動させられ（これはフィルタ係数が１である場合であり、そうでなければ、通常、関数Ｆｗkで表される予測シフトが予測ベクトル94に対して適応される）、予測ベクトル96が生成される。普通、これらのステップは、線形プロセスモデルを用いて、ＭＰＣ予測ブロック70により実行される。しかしながら、プロセス50が非線形であり、かつ現在のプロセス入力値に基づくプロセス出力値ＣＶの予測信号が利用可能である場合には、予測ベクトル96は、修正済み予測ベクトル98を生成すべく、その利用可能な非線形予測信号を用いて補正ユニット78により修正される。
【００２７】
具体的にいえば、非線形プロセスモデル42からの予測信号60が予測ベクトルである場合、補正ユニット78は、予測ベクトル98が実質的に非線形プロセスモデル42により作成される予測信号60からなるように、線形モデル化により作成された予測ベクトル96を予測信号60で置換するのみでよい。このような非線形予測ベクトルは、動的ニューラルネットワークモデル（すなわち、非線形プロセスモデル）を用いて生成されうる。しかしながら、動的ニューラルネットワークモデルは、作成が困難であり、一般的には適応されない。それに対して、非線形プロセスモデル42からの予測信号60が、プロセス50に対する現在の入力値が一定であること想定する制御時間範囲においてプロセス出力値ＣＶの予測定常状態を示す定常状態信号である場合には、非線形プロセスモデルの予測信号60は、任意の所望の技術を用いて予測ベクトル96を調整して予測ベクトル98を生成するために用いられてもよい。なお、非線形プロセスモデル42がニューラルネットワークプロセスモデルである場合には、プロセス出力ＣＶの定常状態値は、現行のニューラルネットワークモデルの入力値を凍結し、定常状態に達するのに必要なプロセス時間（たとえば、制御時間範囲）の終点におけるニューラルネットワークモデル出力値を作成することにより生成または作成されうる。
【００２８】
非線形プロセスモデル42により作成される予測信号60を用いて、線形プロセスモデル70により作成される予測ベクトル96を修正する方法の一つは、予測区間の終点における予測ベクトル96の値を予測定常状態値60と一致するように設定し、その点における時間に基づく予測ベクトル96のその他の値の各々を比例的に修正することである。ΔＳＳがスキャンｋ＋１における予測区間の終点での補正値である場合、未来の任意の時点における補正値は以下の式で表される：
【数１】
0004781641.tif 000002
ここで、
ｓはスキャン周期であり、
ｉは未来のスキャン番号であり（ここで、ｉは０からｐ−１までの数である）、
τは仮のプロセス出力時定数であり、この時定数は、補正出力の最大ステップ応答時定数と想定しうる。所望ならば、τは、定常状態に達するのに必要な時間を３または４で割った数の如き定常状態に達するのに必要な時間を割って得られる数であってもよい。この式によれば、
【数２】
0004781641.tif 000003
は、非線形プロセスモデルからの補正を考慮に入れた、（以下で定義される）
【数３】
0004781641.tif 000004
と同一の次元を有するベクトルである。したがって、
【数４】
0004781641.tif 000005
の関係が成り立つ。ここで、ΔＳＳk+1は予測区間の終点における補正値である。いうまでもなく、これらの式において、
【数５】
0004781641.tif 000006
は、スキャンｋ＋１において非線形プロセスモデルにより作成される将来の（定常状態における）出力値であり、
【数６】
0004781641.tif 000007
は、スキャンｋ＋１において線形プロセスモデルにより作成される将来のスキャンｐ−１におけるプロセス出力の予測値であり、
【数７】
0004781641.tif 000008
は、スキャンｋ＋１において作成される線形モデル化用予測ベクトルであり、通常、
【数８】
0004781641.tif 000009
は、時間ｋにおいて、０ステップ先、１ステップ先、２ステップ先、…、ｐ−１ステップ先のプロセス出力を予測するベクトルである。
予測ベクトル
【数９】
0004781641.tif 000010
は、
【数１０】
0004781641.tif 000011
に等しい補正済み予測ベクトル98（図４）である。現時点での補正値は、プロセス出力ＣＶの測定結果とこの時点の予測値とを一致させるべく、Δｎk+1（０）＝０と設定されうる。
【００２９】
これらの式から明らかなように、プロセス出力の各々に対して補正される予測ベクトルは、所定の時間範囲において定常状態値を有しており、補正により、（たとえば、ＭＰＣブロック内の）線形プロセスモデルにより作成される予測ベクトルは、当該予測ベクトルに対して、時間範囲の終点において線形モデルおよび非線形モデルにより作成される予測値間の差に一次または高次の指数関数を掛け合わせたものを加えることにより変更される。実施例によっては、この一次または高次の指数関数は、定常状態に達するのに必要なプロセス出力時間に等しい時定数を用いる場合もあれば、定常状態に達するのに必要なプロセス出力時間を何らかの数で割って得られた数に等しい時定数を用いる場合もある。
【００３０】
これに代えて、プロセス時定数が著しいエラー伴うとものとされる場合、予測ベクトル96は、定常状態に達するのに必要なプロセス時間を用いて以下の式で補正されうる。
【００３１】
【数１１】
0004781641.tif 000012
ここで、
ＴＳＳは、プロセス定常状態に達するのに必要な時間であり、３≦α≦５の範囲を有している。
【００３２】
一般的に、予測区間における補正の実行には以下の式のように高次の関数が適用さうる。
【００３３】
【数１２】
0004781641.tif 000013
ここで、
ｆ（ｉ、ｓ、ＴＳＳ）は、予測補正に用いられる一次元よりも高次元の一般指数関数である。原則的には、予測補正式は、該当する出力の線形ステップ応答に用いられる関数の次元と同一の次元であることが推奨される。
【００３４】
これらの方法の各々は、応答のダイナミックスを保持しながら（現時点と時間（ｋ＋ｐ）との区間において）中間予測値を設定し、それにより、そのモデル化の結果をウィーナ（Ｗｉｅｎｅｒ）モデル化およびハマーシュタイン（Ｈａｍｍｅｒｓｔｅｉｎ）モデル化に匹敵するものとする。もちろん、所望ならば、本明細書に記載された方法に代えて、線形プロセスモデル70により作成される予測ベクトルを、非線形プロセスモデル42により作成される予測信号60を用いて補正する他の方法も同様に用いてもよい。
【００３５】
いうまでもなく、本明細書に記載されるように、プロセス内の非線形性を補償すべく線形プロセスモデルを用いて作成されるモデル予測ベクトルを非線形プロセスモデルの出力値を用いて補正するこのような方法は、コントローラのゲインまたは非線形モデルの変数を再生するための多くの計算を処理する必要なしにプロセスの動作中に実行することが比較的に容易かつ単純である。
【００３６】
また、いうまでもなく、ＭＰＣブロック44が線形プロセスモデルを依然として用いているので、制御出力部は、プロセス出力値が所望の目標値に一致するようにプロセス50を最適に駆動させるように十分に設定されていない。しかしながら、プロセス出力予測ベクタが、各スキャン後にまたはプロセスの動作中全体にわたり周期的に、すなわちｎスキャン毎に（ここで、ｎは任意の所望の数である）、非線形プロセスモデル42を用いて更新されているので、ＭＰＣ制御行列86は、プロセス50内の非線形性にもかかわらず比較的迅速に所望のまたは目標の値にプロセス出力値を収束させる制御信号を生成する。
【００３７】
また、いうまでもなく、非線形プロセスモデル42により作成される予測信号60が正しく適用されるためには、この予測信号は、線形モデルブロック70の出力部で予測ベクトルを作成すべく用いられる入力値のセットと同一のセットの入力値に対して作成される必要がある。非線形プロセスモデル42とＭＰＣのブロック動作が確実に同期されることは重要であり、これらのブロックの未来のまたは予測される出力値が相互に一スキャン分シフトされないように注意をする必要がある。したがって、ブロック実行順位は、ＭＰＣブロック44のプロセスモデル70が実行されるときに予測信号60が利用可能であるように、ＭＰＣブロック44の実行まえに非線形プロセスモデル42を実行することを有していることが好ましい。
【００３８】
非線形プロセスモデル42がニューラルネットワークプロセスモデルである場合、ニューラルネットワーク未来予測用のフィルタリングが予測シフトに対しても同様に適応されうる。具体的にいえば、モデル化線形式を以下のように変更しうる：
【数１３】
0004781641.tif 000014
【数１４】
0004781641.tif 000015
または、
【数１５】
0004781641.tif 000016
【数１６】
0004781641.tif 000017
ここで、
Ａ、Ｂ、Ｃは、プロセスモデル行列であり、
０≦Ｆ≦１は、非測定外乱補正用のフィルタであり、
０≦ｆ≦１は、ニューラルネットワーク補正用のフィルタである。
もちろん、上記の式を変形したものを同様に適用してもよい。
【００３９】
図５は、プロセス50に接続されているさらに高度なアドバンスト制御システム100を例示している。このアドバンスト制御システム100は、ＭＰＣブロック44と、二つのニューラルネットワークプロセスモデル102、104とを備えており、これらのニューラルネットワークプロセスモデルの各々は、ＭＰＣブロック44に供される予測信号106、108を生成する。図２に示されているＭＰＣブロック44と同様に、このＭＰＣブロック44は、それに対する入力として、プロセス出力48と、外乱変数および制約変数52とを受信し、図３の構成に関連して上述したとおりに概ね動作する。同様に、ニューラルネットワークプロセスモデル102、104の各々は、入力56として、制御入力信号および操作入力信号54と、外乱変数および制約変数52とを受信する。ニューラルネットワークプロセスモデル102、104は、任意の標準のまたは公知の方法でトレーニングされ、受信する入力に基づいてプロセス50の出力のうちの一つをモデル化または予測する標準的なニューラルネットワークとして設計されている。一般的にいえば、出力106、108は、それぞれ、プロセス出力に対する予測ベクトルであってもよく、またはプロセスモデル102、104に対する入力が一定のままであることを前提にプロセス出力の定常状態値を予測する定常状態予測値であってもよい。
【００４０】
いうまでもなく、ＭＰＣブロック44は、図３および図４における実施例の信号60に関連して概ね上述された方法でＭＰＣブロック44内のさまざまな予測ベクトルを別々に補正または補償すべく予測信号106の各々を用いる。さらに、二つのニューラルネットワークプロセスモデルが図５には例示されているが、一または複数のプロセス入力に非線形性を示すさまざまなプロセス出力に対して任意の数の予測信号を生成すべく、その他のいかなる数のニューラルネットワークプロセスモデルを用いてもよい。一般的にいえば、非線形特性を有する別々のプロセス出力に対して、個別のニューラルネットワークプロセスモデルが作成される。しかしながら、必ずしもこれに限定されない
図６は、ＭＰＣブロック44と、ＨＹＳＹＳ（登録商標）、Ｃａｐｅ（登録商標）などにより提供される高忠実度のプロセスモデルもしくはシミュレーション110またはその他の高忠実度プロセスモデルとを備えるアドバンスト制御システム109のさらなる実施例を例示している。このような高忠実度プロセスモデル110は、多重入力／多重出力プロセスモデル、第一の原理に基づく多重入力／単一プロセスモデル（線形または非線形）、ニューラルネットワークロジック、ファジーロジック、またはプロセス入力に基づくプロセス出力のうちの一または複数に対して予測信号を生成するその他のロジックでありうる。いうまでもなく、ＭＰＣブロック44は、図３のＭＰＣ予測ブロック70によりプロセス出力に対して作成されるさまざまな予測ベクトルを補正または補償すべく、さまざまな予測信号の各々を用いる。また、図６は高忠実度プロセスモデル110が三つの予測信号を生成することを例示しているが、高忠実度プロセスモデル110は、ＭＰＣブロック44により用いられるべくその他いかなる数の予測信号を生成してもよい。なお、その正確な数は、通常、プロセス入力のうちの一または複数に対して非線形応答を示すプロセス出力数に依存する。
【００４１】
図７は、アドバンスト制御システム120のさらなる実施例を例示している。この実施例では、非線形プロセスモデル122が、プロセス出力に対する予測信号124を生成し、その予測信号124をオプチマイザ126に供与し、次いで、このオプチマイザが、内部の線形プロセスモデルと上述の予測信号124を用いて一または複数の制御目標出力値を生成し、この制御目標出力値が、プロセスプラント50の制御に利用する一組の制御信号を作成すべく、ＭＰＣコントローラでありうるコントローラ128へ伝送され、そのコントローラにより用いられる。いうまでもなく、オプチマイザ126が線形プロセスモデル130を備えており、この線形プロセスモデル130が、プロセス50をモデル化し、一または複数のプロセス出力予測ベクトルを生成すべく任意の標準のまたは公知の方法で用いられ、次いで、これらの一または複数のプロセス出力予測ベクトルが、予測信号124を用いて補正ユニット132により補正または補償され、次いで、このように補正された予測ベクトルがコントローラ128の駆動に利用される制御目標信号（所望の制御信号）を生成または作成すべく用いられる。このような補正または補償は、図３または図４に関連して上述される方法のうちのいずれかと同様の方法で、またはその他の所望の方法で実行されうる。オプチマイザ126は、たとえば上記米国特許出願番号第10/241,350号において開示されているオプチマイザを含むいかなる所望のタイプのオプチマイザであってもよい。いうまでもなく、オプチマイザ126は、プロセスプラント50により作成されるプロセス出力の表示情報を受信するさらなるコントローラ128を備える多重入力／多重出力制御ルーチンの一部である。
【００４２】
さらに、いうまでもなく、線形プロセスモデルにより作成される予測ベクトルを補正または補償してプロセスの非線形性を補正すべく高精度のまたは非線形のプロセスモデルにより作成される予測信号を利用する技術は、本明細書において特に記載されているコントローラルーチンおよびオプチマイザルーチン以外のその他のコントローラコンポーネント内で用いられてもよい。
【００４３】
アドバンスト制御システム38、100、109、120が、ＭＰＣブロック44、128と一または複数の個別のプロセスモデルブロック42、102、104、110、122とを備える個別の機能ブロックであるものとして本明細書で記載されているが、アドバンスト制御ブロック38は、各々が別々の機能ブロックでありうるＭＰＣブロックと一または複数のプロセスモデルブロックとを通信可能に相互接続することにより実現されてもよい。これにかえて、所望ならば、本明細書に記載のプロセスモデル42、102、104、110、122は、ＭＰＣブロック44、128に組み入れられてもまたはその一部であってもよい。さらに、アドバンスト制御ブロックまたはアドバンスト制御システム38、100、109、120が、ＭＰＣブロックを多重入力／多重出力制御ブロックとして備えるものとして本明細書で記載されているが、これに代えて、ファジーロジック制御ブロック、オプチマイザブロック、またはプロセスに対する制御信号を作成すべく線形プロセスモデルを用いるその他の制御ルーチンまたはその一部の如き他の多重入力／多重出力制御ブロックを用いてもよい。
【００４４】
いうまでもなく、本明細書に記載されているＭＰＣロジックルーチンまたはアドバンスト制御ロジックルーチンおよびＭＰＣ方法またはアドバンスト制御方法の利用により、ユーザは、標準型の線形ＭＰＣロジックに非線形プロセスモデルを統合させなくとも、非線形特性を有するプロセスで利用できるＭＰＣブロックの如きアドバンスト制御ブロックを作成することが可能となる。したがって、このシステムを利用することにより、比較的少ない労力で非線形プロセスの制御をより向上させ、プロセス制御ルーチン内での実行を容易にし、さらに柔軟性を提供しＭＰＣ制御ロジックへの割り込みを最小限に抑えるために、制御ニューラルネットワークプロセスモデルの如き公知のかつ比較的構築が簡単な非線形システムモデルを用いて線形ＭＰＣの動作を補正することができる。
【００４５】
アドバンスト制御ブロックがＦｉｅｌｄｂｕｓデバイスおよび標準型４〜２０ｍａデバイスとともに用いられるものとして本明細書において記載されているが、いうまでもなく、アドバンスト制御ブロックは、その他のプロセス制御用の通信プロトコルまたはプログラミング環境を用いて実行されてもよいし、その他のタイプのデバイス、機能ブロック、またはコントローラとともに用いられてもよい。なお、本明細書における表現「機能ブロック」は、ＦｉｅｌｄｂｕｓプロトコルまたはＤｅｌｔａＶコントローラプロトコルが機能ブロックとして識別するものに限定されるものではなく、なんらかのプロセス制御機能の実行に用いられうる任意のタイプの制御システムおよび／または通信プロトコルに関連するその他の所望のタイプのブロック、プログラム、ハードウェア、ファームウェアなどを含む。また、機能ブロックは、通常、オブジェクト指向プログラミング環境内のオブジェクトの形態をとるが、必ずしもこれに限定されるわけではない。
【００４６】
本明細書に記載のアドバンスト制御ブロックならびにそれに付属するＭＰＣブロックおよび非線形プロセスモデルは、ソフトウェアにより実現されることが好ましいが、ハードウェア、ファームウェアなどのより実現されてもよいし、また、プロセス制御システムに関連するその他のプロセッサにより実行されてもよい。したがって、本明細書記載のルーチン38、42、44、100、102、104、109、110は、標準型多目的ＣＰＵにより実現されてもよく、所望ならば、たとえばＡＳＩＣの如き特定用途向けハードウェアまたはファームウェアにより実現されてもよい。ソフトウェアで実現する場合、該ソフトウェアは、磁気ディスク、レーザディスク、光学式ディスク、または他の記憶媒体の如きコンピュータ読取り可能メモリ、コンピュータあるいはプロセッサなどのＲＡＭまたはＲＯＭなどに格納されてもよい。同様に、該ソフトウェアは、例えばコンピュータ読取り可能ディスクまたは他の移動可能なコンピュータ記憶メカニズムを利用した方式、または、電話回線、インターネットなどの通信チャネルを利用した変調方式を含む公知のまたは所望の伝達方法を介してユーザまたはプロセス制御システムへ伝達されてもよい（上記のように、電話回線、インターネットなどの通信チャネルを利用した変調方式は、移動可能記憶媒体を介して上記のソフトウェアを伝達する方式と同様または相互交換可能であるとみなされる）。さらに、所望ならば、このソフトウェアの異なる部分を、異なるプロセッサによりおよび／または異なるデバイスにおいて別々に実行してもよい。
【００４７】
したがって、本発明は、特定の例を参照して説明されているが、これは説明のみを意図したものであり、本発明を限定することを意図したものではない。本発明の精神および範囲から逸脱することなく、開示されている実施例に対して変更、追加、または削除を加えることが可能であることは当業者にとって明らかなことである。
【図面の簡単な説明】
【００４８】
【図１】非線形予測機能を有するように構成された多重入力多重出力制御ブロックを備えるアドバンスト制御システムを組み込むプロセス制御システムを示すブロック線図／概略図である。
【図２】非線形入力／出力特性を示すプロセスを制御すべくプロセス制御ルーチン内で接続されるモデル予測制御ブロックとニューラルネットワークプロセスモデルとを備える図１のアドバンスト制御システムの一つの実施例を示すブロック線図である。
【図３】図２のアドバンスト制御システムの詳細ブロック線図である。
【図４】非線形プロセスモデルによって生成された予測信号により行われる作成および補正のさまざまな段階における、図３のモデル予測制御ブロックにより生成される予測ベクトルを例示するグラフである。
【図５】プロセスを制御すべくプロセス制御ルーチン内で接続されるモデル予測制御ブロックと多重ニューラルネットワークプロセスモデルとを備えるアドバンスト制御システムを示すブロック線図である。
【図６】プロセスを制御すべくプロセス制御ルーチン内で接続されるモデル予測制御ブロックとアドバンストまたは高忠実度のプロセスモデルとを備えるアドバンスト制御システムを示すブロック線図である。
【図７】プロセスを制御すべくプロセス制御ルーチン内で接続されるオプチマイザブロックと、コントローラと、ニューラルネットワークプロセスモデルとを備えるアドバンスト制御システムを示すブロック線図である。
【符号の説明】
【００４９】
10  プロセス制御システム
12  プロセスコントローラ
12a  プロセッサ
12b  コンピュータ読み取り可能メモリ
14  データヒストリアン
16  ワークステーションまたはコンピュータ
18  通信ネットワーク
20〜27  フィールドデバイス
28、29  入力／出力（Ｉ／Ｏ）カード
32、34  ルーチン
36  アドバンスト制御ループ
38  アドバンスト制御ブロック
40  アドバンスト制御ブロック生成ルーチン
42  非線形プロセスモデル
44  ＭＰＣ制御ブロック
48  プロセス出力
50  プロセスプラント
52  プロセス外乱、外乱変数および制約変数
54  操作変数制御信号
56、76  入力
60  予測信号
70  制御予測プロセスモデル
72  出力回線
74、84  ベクトル加算器
78  補正ユニットまたは補償ユニット
80  制御目標ブロック
82  軌道フィルタ
86  ＭＰＣアルゴリズムブロック
90  グラフ
92、94、96、98  予測ベクトル
100、109  アドバンスト制御システム
102、104  ニューラルネットワークプロセスモデル
106、108  予測信号
110  高忠実度プロセスモデル、シミュレーション
124  予測信号
126  オプチマイザ
128  コントローラ
130  線形プロセスモデル
132  補正ユニット
【図１】
0004781641.tif 000018
【図２】
0004781641.tif 000019
【図３】
0004781641.tif 000020
【図４】
0004781641.tif 000021
【図５】
0004781641.tif 000022
【図６】
0004781641.tif 000023
【図７】
0004781641.tif 000024