(57)【特許請求の範囲】
【請求項１】
マスタモデル予測制御（ＭＰＣ）コントローラからスレーブＭＰＣコントローラに複数の照会最適化呼び出しを送信するステップであって、各照会最適化呼び出しが、変数空間内の複数の方向の内の異なった方向に関連付けられるものと、
前記照会最適化呼び出しの各々に応答して、マスタモデル予測制御（ＭＰＣ）コントローラでスレーブＭＰＣコントローラから情報を受信するステップであって、前記情報が、前記スレーブＭＰＣコントローラが、前記スレーブＭＰＣコントローラのプロセス変数制約に反することなく、どの程度まで、変数空間内で、複数の操作変数のそれぞれの操作変数を、それぞれの前記照会最適化呼び出しに対応する方向に変更することができるかを示し、前記変数空間が、前記プロセス変数制約によって規定された第１の実行可能領域を含むステップと、
前記情報を使用して前記スレーブＭＰＣコントローラに関連する第２の実行可能領域を推定するステップであって、前記第２の実行可能領域が、前記複数の操作変数の操作変数値の組合せが前記プロセス変数制約を満たす、前記第１の実行可能領域の一部を特定する、ステップと、
前記第２の実行可能領域を使用して前記マスタＭＰＣコントローラでプラント全体の最適化を実行するステップであって、前記プラント全体の最適化の間に生成されるソリューションが、前記第２の実行可能領域内の前記操作変数値の組合せのうちの１つを含む、ステップと
を含み、
前記情報を受信するステップが、前記照会最適化呼び出しに応答して前記スレーブＭＰＣコントローラからプロキシ制限値を受信するステップを含み、
各プロキシ制限値が、前記スレーブＭＰＣコントローラが前記プロセス変数制約に違反することなく前記操作変数を変更することができる前記変数空間内の前記方向のうちの１つにおける最大距離を特定し、
前記プロキシ制限値が、前記スレーブＭＰＣコントローラの前記プロセス変数制約に関連する制限値を、前記マスタＭＰＣコントローラの前記変数空間に移すことの結果として得られた、前記マスタＭＰＣコントローラの前記変数空間内の制限値である、
方法。
【請求項２】
前記複数の方向が、前記スレーブＭＰＣコントローラに関連する現在のオペレーティング点に関して定義され、前記現在のオペレーティング点が、前記変数空間内の特定の点を定義する、請求項１に記載の方法。
【請求項３】
前記複数の方向のうちの少なくとも１つの方向を特定するステップ
をさらに含み、
前記複数の方向のうちの少なくとも１つの方向が、前記スレーブＭＰＣコントローラに関連する線形変数制限にほぼ垂直な方向を含む、請求項１に記載の方法。
【請求項４】
マスタモデル予測制御（ＭＰＣ）コントローラを備え、前記ＭＰＣコントローラが、
複数の照会最適化呼び出しを、スレーブＭＰＣコントローラに送信することであって、各照会最適化呼び出しが、変数空間内の複数の方向の中の異なった方向に関連付けられることと、
前記照会最適化呼び出しの各々に応答して、前記スレーブＭＰＣコントローラから情報を受信することであって、前記情報が、前記スレーブＭＰＣコントローラが、前記スレーブＭＰＣコントローラのプロセス変数制約に反することなく、どの程度まで変数空間内で、複数の操作変数のそれぞれの操作変数を、それぞれの前記照会最適化呼び出しに対応する方向に変更することができるかを示し、前記変数空間が、前記プロセス変数制約によって規定される第１の実行可能領域を含むことと、
を行うように構成された少なくとも１つのネットワークインターフェースと、
前記情報を使用して前記スレーブＭＰＣコントローラに関連する第２の実行可能領域を推定し、前記第２の実行可能領域が、前記複数の操作変数の操作変数値の組合せが前記プロセス変数制約を満たす、前記第１の実行可能領域の一部を特定し、
前記第２の実行可能領域を使用してプラント全体の最適化を実行し、前記プラント全体の最適化の間に生成されるソリューションが、前記第２の実行可能領域内の前記操作変数値の組合せのうちの１つを含む、
ように構成される、少なくとも１つの処理デバイスと、
を備え、
前記少なくとも１つの処理デバイスが、前記照会最適化呼び出しに応答して前記スレーブＭＰＣコントローラからプロキシ制限値を受信するように構成され、
各プロキシ制限値が、前記スレーブＭＰＣコントローラが前記プロセス変数制約に違反することなく前記操作変数を変更することができる前記変数空間内の前記方向のうちの１つにおける最大距離を特定し、
前記プロキシ制限値が、前記スレーブＭＰＣコントローラの前記プロセス変数制約に関連する制限値を、前記マスタＭＰＣコントローラの前記変数空間に移すことの結果として得られた、前記マスタＭＰＣコントローラの前記変数空間内の制限値である、
装置。
【請求項５】
コンピュータプログラムを備える非一時的コンピュータ可読媒体であって、前記コンピュータプログラムがコンピュータ可読プログラムコードを備え、当該コンピュータ可読プログラムコードが実行されると、少なくとも１つの処理デバイスに、
マスタモデル予測制御（ＭＰＣ）コントローラからスレーブＭＰＣコントローラに複数の照会最適化呼び出しを送信するステップであって、各照会最適化呼び出しが、変数空間内の複数の方向の内の異なった方向に関連付けられるものと、
前記照会最適化呼び出しの各々に応答して、前記マスタモデル予測制御（ＭＰＣ）コントローラで前記スレーブＭＰＣコントローラから情報を受信するステップであって、前記情報が、前記スレーブＭＰＣコントローラが、前記スレーブＭＰＣコントローラのプロセス変数制約に反することなく、どの程度まで、変数空間内で、複数の操作変数のそれぞれの操作変数を、それぞれの前記照会最適化呼び出しに対応付けられた方向に変更することができるかを示し、前記変数空間が、前記プロセス変数制約によって規定された、第１の実行可能領域を含むステップと、
前記情報を使用して前記スレーブＭＰＣコントローラに関連する第２の実行可能領域を推定するステップであり、前記第２の実行可能領域が、前記複数の操作変数の操作変数値の組合せが前記プロセス変数制約を満たす前記第１の実行可能領域の一部を特定する、ステップと、
前記第２の実行可能領域を使用して前記マスタＭＰＣコントローラでプラント全体の最適化を実行するステップであって、前記プラント全体の最適化の間に生成されるソリューションが、前記第２の実行可能領域内の前記操作変数値の組合せのうちの１つを含む、ステップと、
を実行させ、
前記情報が、前記スレーブＭＰＣコントローラからのプロキシ制限値を含み、
各プロキシ制限値が、前記スレーブＭＰＣコントローラが前記プロセス変数制約に違反することなく前記操作変数を変更することができる前記変数空間内の前記方向のうちの１つにおける最大距離を特定し、
前記プロキシ制限値が、前記スレーブＭＰＣコントローラの前記プロセス変数制約に関連する制限値を、前記マスタＭＰＣコントローラの前記変数空間に移すことの結果として得られた、前記マスタＭＰＣコントローラの前記変数空間内の制限値である、
る、
非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照及び優先権の主張
本願は、参照によりその全体が本明細書に組み込まれる、２０１４年７月２１日に出願された米国特許出願第１４／３３６，８８８号の一部継続として、米国特許法第１２０条の下で優先権を主張する。
【０００２】
本開示は、概して、産業用プロセス制御及び自動化システムに関する。より詳細には、本開示は、カスケード型モデル予測制御（ＭＰＣ）をサポートするためにプロキシ制限を計算するための装置及び方法に関する。
【背景技術】
【０００３】
処理設備は、産業用プロセス制御及び自動化システムを使用して管理されることが多い。多くの制御及び自動化システムは、種々の機能を果たす複数の階層レイヤを含む。例えば、下位レイヤは、プロセス制御機能及びモデル予測制御（ＭＰＣ）動作を行うデバイスを含むことができる一方、上位レイヤは、プラント全体の最適化ソリューションを提供するデバイスを含むことができる。
【０００４】
理想的には、制御とプラント全体の最適化は、一体的にデザインされるであろうが、下位レベルでの分散型制御と、上位レベルでの集中型最適化を、どのように同時にもたらすかという１つの問題が起こる。分散型ＭＰＣソリューションは、プロセスの不調、機器の故障、及び保守点検に対処する際のそれらの操作性及び柔軟性により、しばしばより望ましいものとなる。集中型プランニング最適化は、その上位レベル図が枝葉の又は不明瞭な細目を取り除くことから、しばしばより望ましいものとなる。しかしながら、従来の制御及び自動化システムの１つの欠点は、複数のレイヤにわたる保証されたソリューションの一貫性の欠如にある。実際には、プラント全体のプランニング最適化は、仮に閉ループ制御システムの一部として実装されるとしても、まれである。結果として、かなりの額の最適化利益が手の届かないままである。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本開示は、カスケード型モデル予測制御（ＭＰＣ）をサポートするためにプロキシ制限を計算するための装置及び方法を提供する。
【課題を解決するための手段】
【０００６】
第１の実施形態において、方法は、マスタモデル予測制御（ＭＰＣ）コントローラでスレーブＭＰＣコントローラから情報を受信するステップであって、情報が、スレーブＭＰＣコントローラが、スレーブＭＰＣコントローラのプロセス変数制約に反することなく、どの程度まで変数空間内の複数の方向の各々において複数の操作変数を変更することができるかを示す、ステップを含む。本方法はまた、情報を使用して、スレーブＭＰＣコントローラに関連する実行可能領域を推定するステップであって、実行可能領域が、操作変数値の組合せがプロセス変数制約を満たす変数空間の一部を特定する、ステップを含む。加えて、本方法は、実行可能領域を使用してマスタＭＰＣコントローラでプラント全体の最適化を実行するステップであって、プラント全体の最適化の間に生成されるソリューションが、実行可能領域内の操作変数値の組合せのうちの１つを含む、ステップを含む。
【０００７】
第２の実施形態において、装置は、少なくとも１つのネットワークインターフェース及び少なくとも１つの処理デバイスを含む、マスタＭＰＣコントローラを含む。少なくとも１つのネットワークインターフェースは、スレーブＭＰＣコントローラから情報を受信するように構成され、情報が、スレーブＭＰＣコントローラが、スレーブＭＰＣコントローラのプロセス変数制約に反することなく、どの程度まで変数空間内の複数の方向の各々において複数の操作変数を変更することができるかを示す。少なくとも１つの処理デバイスは、情報を使用してスレーブＭＰＣコントローラに関連する実行可能領域を推定するように構成され、実行可能領域が、操作変数値の組合せがプロセス変数制約を満たす変数空間の一部を特定する。少なくとも１つの処理デバイスはまた、実行可能領域を使用してプラント全体の最適化を実行するように構成され、プラント全体の最適化の間に生成されるソリューションが、実行可能領域内の操作変数値の組合せのうちの１つを含む。
【０００８】
第３の実施形態において、非一時的コンピュータ可読媒体は、コンピュータプログラムを具体化する。コンピュータプログラムは、スレーブＭＰＣコントローラが、スレーブＭＰＣコントローラのプロセス変数制約に反することなく、どの程度まで変数空間内の複数の方向の各々において複数の操作変数を変更することができるかを示す情報をスレーブＭＰＣコントローラからマスタＭＰＣコントローラで受信するためのコンピュータ可読プログラムコードを含む。コンピュータプログラムはまた、情報を使用してスレーブＭＰＣコントローラに関連する実行可能領域を推定するためのコンピュータ可読プログラムコードを含み、実行可能領域が、操作変数値の組合せがプロセス変数制約を満たす変数空間の一部を特定する。コンピュータプログラムは、実行可能領域を使用してマスタＭＰＣコントローラでプラント全体の最適化を実行するためのコンピュータ可読プログラムコードをさらに含み、プラント全体の最適化の間に生成されるソリューションが、実行可能領域内の操作変数値の組合せのうちの１つを含む。
【０００９】
その他の技術上の特徴は、以下の図面、発明を実施するための形態、及び特許請求の範囲から、当業者には容易に明らかになるであろう。
本開示のより十分な理解のために、次に、以下の添付図面と併せて取り上げられる、以下の発明を実施するための形態に対して参照が行われる。
【図面の簡単な説明】
【００１０】
【図１】本開示による、例示的な産業用プロセス制御及び自動化システムを示す図である。
【図２Ａ】本開示による、産業用プロセス制御及び自動化システムにおいて、カスケード型ＭＰＣ手法をサポートするために使用される、例示的なプランニング及びモデル予測制御（ＭＰＣ）モデルを示す図である。
【図２Ｂ】本開示による、産業用プロセス制御及び自動化システムにおいて、カスケード型ＭＰＣ手法をサポートするために使用される、例示的なプランニング及びモデル予測制御（ＭＰＣ）モデルを示す図である。
【図３Ａ】本開示による、産業用プロセス制御及び自動化システム用の例示的なカスケード型ＭＰＣアーキテクチャを示す図である。
【図３Ｂ】本開示による、産業用プロセス制御及び自動化システム用の例示的なカスケード型ＭＰＣアーキテクチャを示す図である。
【図３Ｃ】本開示による、産業用プロセス制御及び自動化システム用の例示的なカスケード型ＭＰＣアーキテクチャを示す図である。
【図４】本開示による、カスケード型ＭＰＣアーキテクチャにおけるプロキシ制限の例示的な使用を示す図である。
【図５】本開示による、カスケード型ＭＰＣアーキテクチャと共に使用するための例示的なグラフィカルユーザインターフェース（ＧＵＩ：Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を示す図である。
【図６】本開示による、カスケード型ＭＰＣアーキテクチャと共に寄与値（ｃｏｎｔｒｉｂｕｔｉｏｎ  ｖａｌｕｅ）及び寄与経費（ｃｏｎｔｒｉｂｕｔｉｏｎ  ｃｏｓｔ）を使用するための例示的な技法を示す図である。
【図７】本開示による、カスケード型ＭＰＣアーキテクチャにおいてプランニングモデルを形成するための例示的なベースモデルを示す図である。
【図８】本開示による、カスケード型ＭＰＣアーキテクチャにおいてプランニングモデルを形成するための例示的なベースモデルを示す図である。
【図９】本開示による、カスケード型ＭＰＣアーキテクチャにおいてプランニングモデルを形成するための例示的なベースモデルを示す図である。
【図１０】本開示による、カスケード型ＭＰＣアーキテクチャにおけるプランニングモデルを検証する（ｖａｌｉｄａｔｅ）ための例示的な技法を示す図である。
【図１１】本開示による、カスケード型ＭＰＣアーキテクチャにおけるマスタＭＰＣコントローラとスレーブＭＰＣコントローラとにおいて、変数をリンクするための例示的な技法を示す図である。
【図１２】本開示による、カスケード型ＭＰＣアーキテクチャおけるマスタＭＰＣコントローラとスレーブＭＰＣコントローラとにおいて、変数をリンクするための例示的な技法を示す図である。
【図１３】本開示による、産業用プロセス制御及び自動化システムにおける、カスケード型ＭＰＣコントローラの例示的な使用方法を示す図である。
【図１４】本開示による、カスケード型ＭＰＣをサポートするために実行可能領域に関連するプロキシ制限を生成するための例示的技法を示す図である。
【図１５】本開示による、カスケード型ＭＰＣをサポートするために実行可能領域に関連するプロキシ制限を生成するための例示的技法を示す図である。
【図１６】本開示による、カスケード型ＭＰＣをサポートするために実行可能領域に関連するプロキシ制限を生成するための例示的技法を示す図である。
【図１７】本開示による、カスケード型ＭＰＣをサポートするために実行可能領域に関連するプロキシ制限を生成するための例示的技法を示す図である。
【図１８】本開示による、カスケード型ＭＰＣをサポートするために実行可能領域に関連するプロキシ制限を生成するための例示的技法を示す図である。
【図１９】本開示による、カスケード型ＭＰＣをサポートするためにプロキシ制限を計算するための例示的方法を示す図である。
【発明を実施するための形態】
【００１１】
以下に述べられる図１〜１９、また本特許書類において本発明の原理を説明するために使用される様々な実施形態は、単に例示としてのものであり、どのような形であれ本発明の範囲を限定するものとして解釈されるべきではない。本発明の原理が、任意のタイプの適切に構成されたデバイス又はシステムにおいて実施され得る、ということが当業者であれば理解するであろう。
【００１２】
図１は、本開示による、例示的な産業用プロセス制御及び自動化システム１００を示す図である。図１に示されるように、システム１００は、少なくとも１つの製品又はその他の材料（ｍａｔｅｒｉａｌ）の生産又は処理を容易にする様々な構成要素を含む。例えば、システム１００は、本明細書では、１つ又は複数のプラント１０１ａ〜１０１ｎ内の構成要素にわたる制御を容易にするために使用される。各プラント１０１ａ〜１０１ｎは、少なくとも１つの製品又はその他の材料を生産するための１つ又は複数の製造設備などの、１つ又は複数の処理設備（又は、その１つ又は複数の部分）に相当する。一般に、各プラント１０１ａ〜１０１ｎは、１つ又は複数のプロセスを実装してもよく、個別に又はまとめてプロセスシステムと呼ばれることが可能である。プロセスシステムは、一般に、１つ又は複数の製品又はその他の材料を何らかの方法で処理するように構成された、任意のシステム又はその一部に相当する。
【００１３】
図１では、システム１００は、プロセス制御のパデュー（Ｐｕｒｄｕｅ）モデルを使用して実装される。パデューモデルでは、「レベル０」は、１つ又は複数のセンサ１０２ａと１つ又は複数のアクチュエータ（ａｃｔｕａｔｏｒ）１０２ｂを含み得る。センサ１０２及びアクチュエータ１０２ｂは、多種多様な機能のいずれかを果たすことが可能な、プロセスシステム内の構成要素に相当する。例えば、センサ１０２ａは、温度、圧力、又は流量などのプロセスシステムにおける多種多様な特性を測定することができる。また、アクチュエータ１０２ｂは、プロセスシステムにおける多種多様な特性を修正することができる。センサ１０２ａ及びアクチュエータ１０２ｂは、任意の適切なプロセスシステム内の任意のその他の又は追加の構成要素に相当することができる。センサ１０２ａのそれぞれは、プロセスシステムにおける１つ又は複数の特性を測定するのに適した任意の構造を含む。アクチュエータ１０２ｂのそれぞれは、プロセスシステムにおける１つ又は複数の条件下で動作するのに、又は１つ又は複数の条件に影響を及ぼすのに適した任意の構造を含む。
【００１４】
少なくとも１つのネットワーク１０４は、センサ１０２ａとアクチュエータ１０２ｂに結合される。ネットワーク１０４は、センサ１０２ａ及びアクチュエータ１０２ｂとの相互作用を容易にする。例えば、ネットワーク１０４は、センサ１０２ａからの測定データを伝送し、制御信号をアクチュエータ１０２ｂに提供することができる。ネットワーク１０４は、任意の適切なネットワーク又はネットワークの組合せに相当することができる。特定の例として、ネットワーク１０４は、イーサネット（登録商標）ネットワーク、電気信号ネットワーク（ＨＡＲＴ又はＦＯＵＮＤＡＴＩＯＮ  Ｆｉｅｌｄｂｕｓネットワークなど）、空気制御信号ネットワーク、又は任意のその他のもしくは追加型のネットワークに相当することができる。
【００１５】
パデューモデルでは、「レベル１」は、ネットワークに１０４に結合される１つ又は複数のコントローラ１０６を含み得る。各コントローラ１０６は、特に、１つ又は複数のセンサ１０２ａからの測定値を使用して、１つ又は複数のアクチュエータ１０２ｂの動作を制御し得る。例えば、コントローラ１０６は、１つ又は複数のセンサ１０２ａから測定データを受信し、その測定データを使用して、１つ又は複数のアクチュエータ１０２ｂ用の制御信号を生成することができる。各コントローラ１０６は、１つ又は複数のセンサ１０２ａと相互作用し、かつ１つ又は複数のアクチュエータ１０２ｂを制御するのに適した任意の構造を含む。各コントローラ１０６は、例えば、ロバスト多変数予測制御テクノロジー（ＲＭＰＣＴ：Ｒｏｂｕｓｔ  Ｍｕｌｔｉｖａｒｉａｂｌｅ  Ｐｒｅｄｉｃｔｉｖｅ  Ｃｏｎｔｒｏｌ  Ｔｅｃｈｎｏｌｏｇｙ）コントローラなどの多変数コントローラ、あるいは、モデル予測制御（ＭＰＣ）、動的マトリックス制御（ＤＭＣ：ｄｙｎａｍｉｃ  ｍａｔｒｉｘ  ｃｏｎｔｒｏｌ）、シェルグローバルソリューションの多変数最適化及び制御（ＳＭＯＣ：Ｓｈｅｌｌ  Ｇｌｏｂａｌ  Ｓｏｌｕｔｉｏｎ’ｓ  Ｍｕｌｔｉｖａｒｉａｂｌｅ  Ｏｐｔｉｍｉｚａｔｉｏｎ  ａｎｄ  Ｃｏｎｔｒｏｌ）、又は他の先進的予測制御（ＡＰＣ）を実装する他のタイプのコントローラを表し得る。特定の例として、各コントローラ１０６は、リアルタイムオペレーティングシステムを実行するコンピューティングデバイスを表し得る。
【００１６】
２つのネットワーク１０８は、コントローラ１０６に結合される。ネットワーク１０８は、コントローラ１０６との間でデータのやり取りを行うなどによって、コントローラ１０６との相互作用を容易にする。ネットワーク１０８は、任意の適切なネットワーク又はネットワークの組合せに相当することができる。特定の例として、ネットワーク１０８は、ハネウェル・インターナショナル社（Ｈｏｎｅｙｗｅｌｌ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｉｎｃ．）からのフォルトトレラントイーサネット（登録商標）（ＦＴＥ：Ｆａｕｌｔ  Ｔｏｌｅｒａｎｔ  Ｅｔｈｅｒｎｅｔ）ネットワークなどの、冗長ペアのイーサネット（登録商標）ネットワークに相当することができる。
【００１７】
少なくとも１つのスイッチ／ファイアウォール１１０は、ネットワーク１０８を、２つのネットワーク１１２に結合する。このスイッチ／ファイアウォール１１０は、１つのネットワークからのトラフィックを、もう一方のネットワークに伝送し得る。スイッチ／ファイアウォール１１０はまた、１つのネットワーク上のトラフィックが、もう一方のネットワークに達することを阻止し得る。スイッチ／ファイアウォール１１０は、ハネウェル制御ファイアウォール（ＣＦ９）デバイスなどの、ネットワーク間での通信を提供するのに適した任意の構造を含む。ネットワーク１１２は、ＦＴＥネットワークなどの任意の適切なネットワークに相当することができる。
【００１８】
パデューモデルにおいて、「レベル２」は、ネットワーク１１２に結合された１つ又は複数の機械レベルのコントローラ１１４を含み得る。機械レベルのコントローラ１１４は、特定の産業用機器（ボイラ又はその他の機械など）に関連付けられることが可能な、コントローラ１０６、センサ１０２ａ、及びアクチュエータ１０２ｂの動作及び制御をサポートするために、様々な機能を果たす。例えば、機械レベルのコントローラ１１４は、センサ１０２ａからの測定データ又はアクチュエータ１０２ｂ用の制御信号などの、コントローラ１０６によって収集又は生成された情報のログを作成することができる。機械レベルのコントローラ１１４は、コントローラ１０６の動作を制御し、それによってアクチュエータ１０２ｂの動作を制御するアプリケーションを実行することもできる。さらに、機械レベルのコントローラ１１４は、コントローラ１０６へのセキュアなアクセスを提供することができる。機械レベルのコントローラ１１４のそれぞれは、１つの機械もしくはその他の個々の機器へのアクセスを提供するのに、それらの制御に、又はそれらに関する動作に適した任意の構造を含む。機械レベルのコントローラ１１４のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するサーバコンピューティングデバイスに相当することができる。示されていないが、種々の機械レベルのコントローラ１１４が、プロセスシステム内の種々の機器を制御するために使用され得る（この場合、各機器は、１つ又は複数のコントローラに１０６、センサ１０２ａ、及びアクチュエータ１０２ｂに関連付けられる）。
【００１９】
１つ又は複数のオペレータステーション１１６は、ネットワーク１１２に結合される。オペレータステーション１１６は、機械レベルのコントローラ１１４へのユーザアクセスを提供し、それによって、コントローラ１０６（また、場合によっては、センサ１０２ａ及びアクチュエータ１０２ｂ）へのユーザアクセスを提供することのできる、コンピューティング又は通信デバイスに相当する。特定の例として、オペレータステーション１１６は、ユーザに、コントローラ１０６及び／又は機械レベルのコントローラ１１４によって収集された情報を使用して、センサ１０２ａ及びアクチュエータ１０２ｂの動作上の履歴を見直すことを可能にさせることができる。オペレータステーション１１６は、ユーザに、センサ１０２ａ、アクチュエータ１０２ｂ、コントローラ１０６、又は機械レベルのコントローラ１１４の動作を調整することを可能にさせることもできる。さらに、オペレータステーション１１６は、コントローラ１０６又は機械レベルのコントローラ１１４によって生成された、警告、警報、又はその他のメッセージもしくは表示を受信し、表示することができる。オペレータステーション１１６のそれぞれは、システム１００内の１つ又は複数の構成要素のユーザアクセス及び制御をサポートするのに適した任意の構造を含む。オペレータステーション１１６のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するコンピューティングデバイスに相当することができる。
【００２０】
少なくとも１つのルータ／ファイアウォール１１８は、ネットワーク１１２を２つのネットワーク１２０に結合する。このルータ／ファイアウォール１１８は、セキュアなルータ又は組合せルータ／ファイアウォールなどの、ネットワーク間での通信を提供するのに適した任意の構造を含む。ネットワーク１２０は、ＦＴＥネットワークなどの任意の適切なネットワークに相当することができる。
【００２１】
パデューモデルにおいて、「レベル３」は、ネットワーク１２０に結合された１つ又は複数のユニットレベルのコントローラ１２２を含み得る。各ユニットレベルのコントローラ１２２は、通常、１つのプロセスの少なくとも一部を実装するために共に動作する種々の機械の集合体に相当する、プロセスシステム内の１つのユニットに関連付けられる。ユニットレベルのコントローラ１２２は、下位レベル内の構成要素の動作及び制御をサポートするために様々な機能を果たす。例えば、ユニットレベルのコントローラ１２２は、下位レベル内の構成要素によって収集又は生成された情報のログを作成し、下部レベル内の構成要素を制御するアプリケーションを実行し、かつ下部レベル内の構成要素へのセキュアなアクセスを提供することができる。ユニットレベルのコントローラ１２２のそれぞれは、１つのプロセスユニット内の１つ又は複数の機械もしくはその他の機器へのアクセスを提供するのに、それらの制御に、又はそれらに関する動作に適した任意の構造を含む。ユニットレベルのコントローラ１２２のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するサーバコンピューティングデバイスに相当することができる。示されていないが、種々のユニットレベルのコントローラ１２２が、１つのプロセスシステム内の種々のユニットを制御するために使用され得る（この場合、各ユニットは、１つ又は複数の機械レベルのコントローラ１１４、コントローラ１０６、センサ１０２ａ、及びアクチュエータ１０２ｂに関連付けられる）。
【００２２】
ユニットレベルのコントローラ１２２へのアクセスは、１つ又は複数のオペレータステーション１２４によって提供され得る。オペレータステーション１２４のそれぞれは、システム１００内の１つ又は複数の構成要素のユーザアクセス及び制御をサポートするのに適した任意の構造を含む。オペレータステーション１２４のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するコンピューティングデバイスに相当することができる。
【００２３】
少なくとも１つのルータ／ファイアウォール１２６は、ネットワーク１２０を２つのネットワーク１２８に結合する。このルータ／ファイアウォール１２６は、セキュアなルータ又は組合せルータ／ファイアウォールなどの、ネットワーク間での通信を提供するのに適した任意の構造を含む。ネットワーク１２８は、ＦＴＥネットワークなどの任意の適切なネットワークに相当することができる。
【００２４】
パデューモデルにおいて、「レベル４」は、ネットワーク１２８に結合された１つ又は複数のプラントレベルのコントローラ１３０を含み得る。各プラントレベルのコントローラ１３０は、通常、同一、同様、又は種々のプロセスを実装する１つ又は複数のプロセスユニットを含み得る、プラント１０１ａ〜１０１ｎのうちの１つに関連付けられる。プラントレベルのコントローラ１３０は、下位レベル内の構成要素の動作及び制御をサポートするために様々な機能を果たす。特定の例として、プラントレベルのコントローラ１３０は、１つ又は複数の製造実行システム（ＭＥＳ：Ｍａｎｕｆａｃｔｕｒｉｎｇ  Ｅｘｅｃｕｔｉｏｎ  Ｓｙｓｔｅｍ）アプリケーション、スケジューリングアプリケーション、又は任意のその他のもしくは追加のプラントもしくはプロセス制御アプリケーションを実行することができる。プラントレベルのコントローラ１３０のそれぞれは、１つのプロセスプラント内の１つ又は複数のプロセスユニットへのアクセスを提供するのに、それらの制御に、又はそれらに関する動作に適した任意の構造を含む。プラントレベルのコントローラ１３０のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するサーバコンピューティングデバイスに相当することができる。
【００２５】
プラントレベルのコントローラ１３０へのアクセスは、１つ又は複数のオペレータステーション１３２によって提供され得る。オペレータステーション１３２のそれぞれは、システム１００内の１つ又は複数の構成要素のユーザアクセス及び制御をサポートするのに適した任意の構造を含む。オペレータステーション１３２のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するコンピューティングデバイスに相当することができる。
【００２６】
少なくとも１つのルータ／ファイアウォール１３４は、ネットワーク１２８を１つ又は複数のネットワーク１３６に結合する。このルータ／ファイアウォール１３４は、セキュアなルータ又は組合せルータ／ファイアウォールなどの、ネットワーク間での通信を提供するのに適した任意の構造を含む。ネットワーク１３６は、エンタープライズ全体のイーサネット（登録商標）もしくはその他のネットワーク、又はより大型のネットワーク（インターネットなど）の全体もしくは一部などの、任意の適したネットワークに相当することができる。
【００２７】
パデューモデルにおいて、「レベル５」は、ネットワーク１３６に結合された１つ又は複数のエンタープライズレベルのコントローラ１３８を含み得る。各エンタープライズレベルのコントローラ１３８は、通常、複数のプラント１０１ａ〜１０１ｎ用のプランニング動作を行い、かつそれらのプラント１０１ａ〜１０１ｎの様々な側面を制御することができる。エンタープライズレベルのコントローラ１３８はまた、プラント１０１ａ〜１０１ｎ内の構成要素の動作及び制御をサポートするために様々な機能を果たす。特定の例として、エンタープライズレベルのコントローラ１３８は、１つ又は複数の注文処理アプリケーション、エンタープライズリソースプランニング（ＥＲＰ：Ｅｎｔｅｒｐｒｉｓｅ  Ｒｅｓｏｕｒｃｅ  Ｐｌａｎｎｉｎｇ）アプリケーション、先進的プランニング及びスケジューリング（ＡＰＳ：Ａｄｖａｎｃｅｄ  Ｐｌａｎｎｉｎｇ  ａｎｄ  Ｓｃｈｅｄｕｌｉｎｇ）アプリケーション、又はその他のもしくは追加のエンタープライズ制御アプリケーションを実行することができる。エンタープライズレベルのコントローラ１３８のそれぞれは、１つ又は複数のプラントの制御部へのアクセスを提供するのに、それの制御に、又はそれに関する動作に適した任意の構造を含む。エンタープライズレベルのコントローラ１３８のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するサーバコンピューティングデバイスに相当することができる。本書類において、「エンタープライズ」という用語は、管理されるべき１つ又は複数のプラントもしくはその他の処理設備を有する組織を指す。１つのプラント１０１ａが管理されるべきである場合、エンタープライズレベルのコントローラ１３８の機能性は、プラントレベルのコントローラ１３０に組み入れられることが可能である、ということに留意されたい。
【００２８】
エンタープライズレベルのコントローラ１３８へのアクセスは、１つ又は複数のオペレータステーション１４０によって提供され得る。オペレータステーション１４０のそれぞれは、システム１００内の１つ又は複数の構成要素のユーザアクセス及び制御をサポートするのに適した任意の構造を含む。オペレータステーション１４０のそれぞれは、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティングシステムを実行するコンピューティングデバイスに相当することができる。
【００２９】
パデューモデルの様々なレベルは、１つ又は複数のデータベースなどのその他の構成要素を含むことができる。各レベルに関連したデータベースは、システム１００のそのレベル又は１つもしくは複数のその他のレベルに関連した任意の適切な情報を格納することができる。例えば、ヒストリアン１４１が、ネットワーク１３６に結合されることが可能である。ヒストリアン１４１は、システム１００についての様々な情報を格納する構成要素に相当することができる。ヒストリアン１４１は、例えば、生産のスケジューリング及び最適化の最中に使用される情報を格納することができる。ヒストリアン１４１は、情報を格納し、かつ情報の検索を容易にするのに適した任意の構造に相当する。ヒストリアン１４１は、ネットワーク１３６に結合された単一の集中型構成要素として示されているが、システム１００内の他の場所に位置することが可能であり、又は複数のヒストリアンが、システム１００内の様々な位置に分散されることが可能である。
【００３０】
特定の実施形態において、図１での様々なコントローラ及びオペレータステーションは、コンピューティングデバイスに相当してもよい。例えば、コントローラ１０６、１１４、１２２、１３０、１３８のそれぞれは、１つ又は複数の処理デバイス１４２と、処理デバイス１４２によって使用され、生成され、又は収集される命令及びデータを格納するための１つ又は複数のメモリ１４４を含むことができる。コントローラ１０６、１１４、１２２、１３０、１３８のそれぞれは、１つ又は複数のイーサネット（登録商標）インターフェースもしくは無線トランシーバなどの、少なくとも１つのネットワークインターフェース１４６も含むことができる。また、オペレータステーション１１６、１２４、１３２、１４０のそれぞれは、１つ又は複数の処理デバイス１４８と、処理デバイス１４８によって使用され、生成され、又は収集される命令及びデータを格納するための１つ又は複数のメモリ１５０を含むことができる。オペレータステーション１１６、１２４、１３２、１４０のそれぞれは、１つ又は複数のイーサネット（登録商標）インターフェースもしくは無線トランシーバなどの少なくとも１つのネットワークインターフェース１５２も含むことができる。
【００３１】
過去数十年にわたって、ＭＰＣは、多くの業種に対する標準多変数制御ソリューションとなってきた。ＭＰＣの広範な使用は、より経済的に意味のある進歩にとっての強固な基盤、すなわち閉ループのプラント全体の最適化を整えた。しかしながら、ほとんどの業種に対して閉ループのプラント全体の最適化を提供しようとする際に、多くの技術上の、作業の流れ上の、またユーザエクスペリエンス上の課題が存在する。結果として、生産プランニングとして一般に知られている、開ループのプラント全体の最適化が依然として行われる。実際には、プラント全体のプランニング最適化は、仮に閉ループ制御システムの一部として実装されるとしても、まれである。事実、多くの業種では、プランニング結果は、毎日のオペレータ指示票などの仲介手段を通して、手動で（従って非最適に）調整される場合が多い。このことから、かなりの額の製造利益が手に入れることができないままである。
【００３２】
いくつかの業種において、生産計画をより小さな実行可能部分に分けるために、開ループ生産スケジューラなどの仲介ソリューションレイヤが考案された。このスケジューラは、プランニングソリューションのオペレータ動作への変換を補助するが、手動の調整をなくすることはない。その他の業種では、開ループ生産スケジューラは、生産プランニングの代わりに使用されているが、その生産高目標（ｏｕｔｐｕｔ  ｔａｒｇｅｔ）は、同じく、手動で調整されることが多い。
【００３３】
開ループソリューションを手動で調整する慣例は、（ｉ）プロセスユニット内の下位レベルの（場合によっては安全関連の）制御制約を満たすために、（ｉｉ）生産在庫（ｐｒｏｄｕｃｔｉｏｎ  ｉｎｖｅｎｔｏｒｙ）又は製品品質に対する外乱（プランニング専門用語では、「想定外事象」と呼ばれる）を補うために、上位レベルの生産目標を変換又は見直す必要性に起因することが多い。手動変換に伴う技術的な難しさは、大体において、様々なスケールでのモデルを使用する多レベルのソリューションを統合する際に伴う難しさと同時に起こる。
【００３４】
本開示は、自動式制御及び自動化システムの一部として、プラント全体の最適化をもたらすのに役立つ、プラント全体の制御及び最適化用のカスケード型ＭＰＣソリューションを提供する。以下に説明されるように、「マスタ」ＭＰＣコントローラは、単一期間のプランニングモデル、又はシードモデルとしてのその他の適切な縮約モデルなどの、プランニングモデルを使用するように構成される。マスタＭＰＣコントローラは、そのオプティマイザ（ｏｐｔｉｍｉｚｅｒ）を使用して、プラント内部の生産在庫、製造活動、又は製品品質を制御し、プラント全体の経済最適化を果たす。マスタＭＰＣコントローラは、１つ又は複数のスレーブＭＰＣコントローラの上にカスケード接続される（ｃａｓｃａｄｅ）。スレーブＭＰＣコントローラは、例えば、システムのユニットレベル（レベル３）におけるコントローラに相当することができ、各スレーブＭＰＣコントローラは、マスタＭＰＣコントローラに、その動作状態と制約を提供する。この理由で、マスタＭＰＣコントローラからのプラント全体の最適化ソリューションは、スレーブＭＰＣコントローラからの全てのユニットレベルのオペレーティング制約を遵守することができる。一体的に、ＭＰＣカスケードは、１つの一貫した制御システムにおいて、分散型制御（ユニットレベルなどにおいて）と集中型プラント全体の最適化（プラントレベルなどにおいて）の両方を同時にもたらす。「プラント全体の最適化」又は「プラント全体の制御」という成句は、産業用設備内の複数のユニットの、それらの複数のユニットがその産業用設備内のありとあらゆるユニットに相当するか否かに関わらず、最適化又は制御を指す。
【００３５】
このようにして、このＭＰＣカスケードソリューションは、埋込み式リアルタイムプランニングソリューションに、下位レベルのオペレーティング制約を遵守することを可能にさせる。プランニングモデルと制御モデルの両方をオンラインで交差活用する（ｃｒｏｓｓ−ｌｅｖｅｒａｇｅ）ことによって、ＭＰＣカスケードソリューションは、リアルタイムに閉ループ制御システム内で、プランニング最適化の「後退ホライズン（区間）」形式を実行することを可能にする。ＭＰＣカスケードソリューションは、特に、そのスレーブＭＰＣコントローラを通して、ジャストインタイムの生産計画を自動的に実行するために使用され得る。マスタＭＰＣコントローラにおける後退ホライズンプランニング最適化の定式は、オフラインのプランニングツールにおいて使用されるような単一期間の、しかし通常１〜１４日の範囲などのその短縮された時間ホライズンでのプランニング最適化の定式と同様、又は同一とすることができる。
【００３６】
本特許書類での残りの説明は、以下のように分けられる。産業用プロセス制御及び自動化の状況で使用され得る多スケールモデルが説明され、多スケールモデルを使用するＭＰＣカスケードソリューションが提供される。多スケールモデルを併合する（ｍｅｒｇｅ）ためのコンジット（ｃｏｎｄｕｉｔ）がプロキシ制限の形式において説明され、ユーザのエクスペリエンスを高めるための多スケールソリューションが提供される。さらに、中央経済目的関数を中間ストリームの価格／経費にキャストする（ｃａｓｔ）方法として、寄与値及び寄与経費の使用が開示され、ＭＰＣカスケードソリューションを使用する一定のシステムで使用され得るモデル構造が説明される。最後に、モデル検証技法が提供され、ＭＰＣカスケードソリューションにおいてマスタ−スレーブ変数に対処するための技法が開示され、産業用プロセスが調整され得る実行可能領域を推定するための技法が提供される。
【００３７】
図１は、産業用プロセス制御及び自動化システム１００の１つの例を示すが、図１に対して、様々な変更が行われ得る。例えば、制御及び自動化システムは、任意の個数のセンサ、アクチュエータ、コントローラ、サーバ、オペレータステーション、ネットワーク、及びその他の構成要素を含むことができる。また、図１でのシステム１００の構成及び配置は、単に例示としてのものである。構成要素は、特定の必要性に従って、任意のその他の適切な構成において、追加され、除外され、組み合わせられ、又は配置されることが可能である。さらに、特定の機能が、システム１００の特定の構成要素によって果たされるとして、説明されている。このことは、単に例示としてのものである。一般に、制御及び自動化システムは、高度に構成可能であり、特性の必要性に従って、任意の適切な方法で構成されることが可能である。さらに、図１は、ＭＰＣカスケードソリューションが使用されることが可能である、例示的な環境を示す。この機能性は、任意のその他の適切なデバイス又はシステムにおいて使用されることが可能である。
【００３８】
多スケールモデル
複数のユニットを有する産業用プラントを考察してみる。上位レベルでは、全てのプロセスユニット間の全体的な物質、構成要素、及びエネルギーの収支が確立される必要がある。下位レベルでは、各ユニットが、プラント内の安全性と、ユニットの円滑で効率的な動作を確実にするように適切に制御される必要がある。
【００３９】
プランニング及びＭＰＣモデルは、カスケード型ＭＰＣアーキテクチャにおける多レベルの問題を解決するために使用され得る多スケールモデルの組の例である。図２Ａ及び２Ｂは、本開示による、産業用プロセス制御及び自動化システムにおけるカスケード型ＭＰＣ手法をサポートするために使用される、例示的なプランニング及びＭＰＣモデルを示す。具体的には、図２Ａは、歩留まり（ｙｉｅｌｄ）に基づくプランニングモデル２００を表し、図２Ｂは、ＭＰＣモデル２５０を表す。
【００４０】
図２Ａに示されるように、プランニングモデル２００は、一般に、供給（ｆｅｅｄ）材料の１つ又は複数の投入（ｉｎｐｕｔ）ストリーム２０４を、処理済み材料の１つ又は複数の産出（ｏｕｔｐｕｔ）ストリーム２０６に変換するように動作する、複数のユニット２０２を特定する。この例では、ユニット２０２は、１つの投入ストリーム２０４（原油）を複数の産出ストリーム２０６（種々の精製済み石油／ガス製品）に変換する、石油及びガス精製所における構成要素を表す。様々な中間製品２０８は、ユニット２０２によって作り出され、１つ又は複数の貯蔵タンク２１０は、中間製品２０８の１つ又は複数を保管するために使用され得る。図２Ｂに示されるように、ＭＰＣモデル２５０は、１つのユニットの複数の構成要素２５２を特定する。様々なバルブ及びその他のアクチュエータ２５４は、ユニット内部で動作を調整するために使用されることが可能で、様々なＡＰＣ及びその他のコントローラ２５６は、ユニット内部でアクチュエータを制御するために使用され得る。
【００４１】
一般に、プランニングモデル２００は、「鳥瞰」図でプラント全体（又はその一部）を見るので、粗いスケールでの個々のユニットに相当する。プランニングモデル２００は、プラント内部の単位生産量、製品品質、物質収支及びエネルギー収支、並びに製造活動に付随する、ユニット間の定常状態関係に焦点を合わせる。プランニングモデル２００は、通常（しかし必ずではない）、プロセス歩留まりモデルと製品品質特性から構成される。プランニングモデル２００は、プランニングツール、スケジューリングツール、歩留まり検証ツール及び／又は履歴的動作データなどの、様々なソースの組合せから構築され得る。しかしながら、ＭＰＣモデル２５０は、より細かいスケールでの少なくとも１つのユニットに相当する。ＭＰＣモデル２５０は、ユニットの安全、円滑、かつ効率的な動作に付随する、制御変数（ＣＶ：Ｃｏｎｔｒｏｌｌｅｄ  Ｖａｒｉａｂｌｅ）、操作変数（ＭＶ：Ｍａｎｉｐｕｌａｔｅｄ  Ｖａｒｉａｂｌｅ）、及び外乱変数（ＤＶ：Ｄｉｓｔｕｒｂａｎｃｅ  Ｖａｒｉａｂｌｅ）間のユニット内部の動的関係に焦点に合わせる。２つのモデル２００、２５０の時間スケールも異なる。ＭＰＣモデルの時間ホライズンは、通常、数分から数時間の範囲であるが、プランニングモデルの時間ホライズンは、通常、数日から数カ月の範囲である。「制御変数」は、一般に、その値が、設定値もしくはその近く又は所望の範囲内にあるように制御される変数を表し、一方「操作変数」は、一般に、少なくとも１つの制御変数の値を修正するように調整される変数を表すことに留意されたい。「外乱変数」は、一般に、その値が考慮されるが、制御も調整もされない可能性がある変数を表す。
【００４２】
プランニングモデル２００は、しばしば、各ユニット内部の圧力、温度、タンクレベル、及びバルブ開口などの、非生産関連の又は非経済的関連の変数を除外することが可能であり、また除外する必要がある。その代わりに、プランニングモデル２００は、１つのプロセスユニットを、１つ又はいくつかの材料もしくはエネルギーの歩留まりベクトルに単純化することができる。一方、ＭＰＣモデル２５０は、通常、ユニットの安全かつ効率的な動作を確実にするのを手助けするために、制御用のオペレーティング変数の全てを含む。結果として、ＭＰＣモデル２５０は、プランニングモデル２００に比べ、１つのユニットに対してより多くの変数を含む。具体的な例として、石油精製所の流動接触分解ユニット（ＦＣＣＵ：Ｆｌｕｉｄｉｚｅｄ  Ｃａｔａｌｙｔｉｃ  Ｃｒａｃｋｉｎｇ  Ｕｎｉｔ）用のＭＰＣモデル２５０は、約１００ＣＶ（産出）と４０ＭＶ（投入）を含むことができる。同じユニットのプランニングモデル２００は、原材料品質及びオペレーティングモード（投入として）と、ＦＣＣＵ製品歩留まり及び品質（産出として）との重要な因果関係のみに焦点を合わせることができ、それによって、プランニングモデル２００は、わずか３つ又は４つの投入と１０の産出を有することができる。この変数差は、従来、多レベルのソリューションを効果的に統合することに対する障害となってきた。追加の差は、２つのモデル２００、２５０の通常の焦点を比較する、以下の表１で合算される。
【００４３】
【表１】
0006647295.tif 000002
【００４４】
粗いスケールのプランニングモデル２００を使用することのいくつかの利点がある。例えば、プラント全体の経済最適化は、任意の１つのプロセスユニット内部の場合によっては不明瞭な細目と絡み合うことなく、プランニングモデル２００を使用して、コンパクトかつ明瞭に定式化され得る。また、最初に、上位レベルの最適化問題を解決し、次に、各ユニットにソリューションを継承する方法を見つけるために、分割−統治手法が、採用され得る。
【００４５】
コンパクトで堅固なプランニングモデル２００は、プランニング問題が簡単に設定され、明瞭に表示され、素早く解決されるようにするが、それは欠点を伴い、すなわち、いずれのユニット内部でも細目にわたる変数の可視性をもたない。これらの細目にわたる変数の多くは、上位レベルの生産プランニングにはほとんど関係ない可能性があるが、小さなサブセットは、通常、それに関係する。プランニングモデル２００が、いずれの下位レベルのユニット内部でも可視性をもたない場合、このモデルは、そのソリューションが、最適でもそうではなくても、全てのユニットの下部レベルの制約を遵守するようになることを保証することはできない。このことは、従来のプランニングソリューションが、しばしばユニット内部のオペレーティング制約を考慮に入れるように、手動で変換されるか見直される必要があり、かなりの利ざやが、変換の際に失われる可能性があることの１つの理由である。スケジューリングソリューションに対しても、それが粗いスケールにおいての歩留まりに基づくプランニングモデル２００を使用する場合、同じことが言える。
【００４６】
全体的な視点から、上位レベルの歩留まりに基づくプランニングモデル２００で定式化された最適化又は制御問題は、下位レベルのＭＰＣモデル２５０から利益を得ることができる。その理論的根拠は、ユニット内の制約充足を保証するために使用される細目が、これらの細目は必ずしも適正なモデル形式に編成されないが、通常、ユニットのＭＰＣモデル２５０にすでにある、ということである。理想的には、必要に応じて、プランニングのための、ユニットの制約の細目を補うために、ＭＰＣモデル２５０が使用されることが可能である。以下で説明されるカスケード型ＭＰＣ手法は、ＭＰＣモデルが、下位レベルの細かいスケールのモデル情報を、上位レベルの粗いスケールのプラント全体の最適化定式又は制御定式に提供するために有効に使用されることが可能な構造的枠組みを提供する。以下に説明されるカスケード型ＭＰＣ手法は、プランニングモデル２００とＭＰＣモデル２５０を利用して、この機能性を提供することができる。
【００４７】
多スケールモデルを使用したカスケード型ＭＰＣソリューション
プラント全体の視点から、制御とプランニングは結合されることが多い。プランニングは、通常、最適化に対する実行可能領域を確立するための制御に頼る一方、制御は、通常、その最も利益をもたらす可能性のあるオペレーティング点において、ユニットを調整し、プラント全体を運営するためのプランニングに頼る。従って、プランニングは、各ユニット内部の制約に、プラント全体の最適化に対するより大きな実行可能領域を作り出すよう強要するＭＰＣコントローラに依存することが多い。一方、ＭＰＣコントローラは、どの制約が本当にプラント全体の障害であり、従って押し出される必要があるか、どの制約が無効ではなく、また無効のままである可能性があるか、を知る前に、プランニングからの手引きに依存することが多い。従って、これらの２のソリューションレイヤは、互いに共依存であり、同時に取り扱われる必要がある。
【００４８】
この連成問題を解決する１つの方法は、制御及びプラント全体の最適化を一体的にデザインすることである。各ＭＰＣコントローラが埋込み式経済的オプティマイザを有することから、プラント全体の最適化とユニットレベルのＭＰＣ制御の両方を行う、１つの大型のプラント全体のＭＰＣコントローラが考案されることが可能である。しかしながら、このような一体式の妥協を許さないＭＰＣソリューションには、様々な欠点がある。どんな一体的デザイン手法にもある１つの課題は、下位レベルでの分散型制御と、上位レベルでの集中型最適化を同時に提供してきたことである。
【００４９】
図３Ａから３Ｃは、本開示による、産業用プロセス制御及び自動化システム用の例示的なカスケード型ＭＰＣアーキテクチャ３００を示す。図３Ａ及び３Ｂに示されるように、カスケード型アーキテクチャ３００は、マスタＭＰＣコントローラ３０２と１つ又は複数のスレーブＭＰＣコントローラ３０４ａ〜３０４ｎを含む。スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、プラント内の１つ又は複数のプロセス３０８ａ〜３０８ｎに関連する１つ又は複数の正規のプロセスコントローラ３０６ａ〜３０６ｍと相互作用する。スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、レベル３コントローラを表し得る一方、プロセスコントローラ３０６ａ〜３０６ｍは、レベル２コントローラを表し得る。プラントの残り（ｒｅｍａｉｎｄｅｒ）３１０は、レベル１コントローラ、センサ、アクチュエータ、及び他の下位レベルの構成要素を含み得る。マスタＭＰＣコントローラ３０２は、一般に、マスタ制御ループ内で動作する一方で、各スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、一般に、スレーブ制御ループ内で動作する。単一マスタ制御ループ内に１つ又は複数のスレーブ制御ループが存在し得る。
【００５０】
各ＭＰＣコントローラ３０２、３０４ａ〜３０４ｎは、経済最適化と多変数制御の機能をサポートする。マスタＭＰＣコントローラ３０２は、プランニングモデル２００（歩留まりに基づく単一期間プランニングモデルなど）を使用して、初期定常状態ゲインマトリックスを提供し、関連のモデルダイナミクスが、プラントのオペレーティングデータ（履歴データなど）を使用して判定され得る。マスタＭＰＣコントローラ３０２は、プラント内部の生産在庫、製造活動、又は製品品質を制御するよう動作する。従って、同じプランニングモデル構造及び経済性を備えた、マスタＭＰＣコントローラ３０２の埋込み式経済的オプティマイザは、単一期間のオフラインプランニング最適化を再現することができるが、それは、オンラインのリアルタイム方法においてである。
【００５１】
マスタＭＰＣコントローラ３０２は、ｎスレーブＭＰＣコントローラ３０４ａ〜３０４ｎ（ｎは１以上の整数値）の上にカスケード接続する。スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、マスタＭＰＣコントローラ３０２に、プラントのユニット毎の将来予測及びオペレーティング制約を提供する。この情報で、カスケード型アーキテクチャ３００からのリアルタイムプランニングソリューションは、上述の欠点を軽減するか又は取り除く。一体的に、ＭＰＣコントローラ３０２、３０４ａ〜３０４ｎは、全て１つの一貫したカスケード型制御システムにおいて、細かいスケールのＭＰＣモデル２５０での下位レベルにおける分散型制御と、粗いスケールのプランニングモデル２００での上位レベルにおける集中型プラント全体の最適化を同時にもたらす。
【００５２】
生産計画が、１組のオペレーティング命令に手動で変換される必要がたびたびあるもう１つの理由は、開ループプランニングソリューションが、通常、数日から１ヶ月（１つの期間での）の範囲である時間ホライズンを有し、またこのソリューションが、普通は１日に１回のみ、又は数日に１回のみ実行されるということである。従って、それは、原材料品質又は周囲条件の変化、プロセスユニットの不調、加熱又は冷却能力の限度、及び保守点検などの不確実性に対処するための効果的なフィードバック機構を欠くことになる。これらの状況への対処を手助けするために、オプティマイザが、マスタＭＰＣコントローラ３０２に埋め込まれ、このオプティマイザは、数分に１回から１時間に１回の範囲の頻度などの、ユーザ規定の頻度で実行することができる。各ユニットの生産数量と製品品質の両方が、その頻度で測定又は推定されることが可能で、予測誤差は、任意の標準ＭＰＣとしてのマスタＭＰＣコントローラ３０２においてバイアス補正され得る。元の最適計画からのズレが検出されると、プラント全体の再最適化が直ちに行われ得る。その後、新しい最適生産目標が、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎに送信され、それらのコントローラによって実行されるようになり、手動の変換又は調整の必要性を減らす、又はなくすることができる。
【００５３】
特定の最適化状況はまた、リアルタイムで追加の利益を獲得するために、従来のＭＰＣ最適化状況から修正されることが可能である。従来のＭＰＣ手法とカスケード型ＭＰＣソリューションとの間のいくつかの類似と相違は、以下を含む可能性がある。
【００５４】
・目的関数は、オフラインプランニングの該当するものと同じままとすることができる。
・マスタＭＰＣコントローラ３０２における時間ホライズンは、数時間から数日又は数週間の範囲のものなどの、オンラインチューニングパラメータとすることができ、オフライン（特に多期間）プランニングで使用される時間ホライズンより短くすることができる。
【００５５】
・チューニングは、ジャストインタイム製造の形式で、より利益を獲得するように設定され得る。チューニングに対する留意点は、（例として）製品の予約注文をどのくらい先まで設定するか、製品注文の変動（数量とグレードの両方において）、どんな追加の購入／販売時機が追求され得るか、どんな半仕上げ構成要素が、取引先と交換され得るか、又はスポット市場で購入／販売され得るか、を含み得る。
【００５６】
・生産在庫及び製品品質は、リアルタイム測定フィードバックを用いて動的に制御されることが可能である。
・時間ホライズン範囲での製品注文は、オフラインの該当するものでは推定されるのとは対照的に、知られている。マスタＭＰＣコントローラ３０２は、仮定の注文に基づく計画とは対照的に、ジャストインタイムの生産計画を作り上げることができる。
【００５７】
・マスタＭＰＣコントローラ３０２において使用されるプランニングモデル２００は、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎに関連する歩留まり検証機構を用いて、リアルタイムで更新され得る。交差検証（ｃｒｏｓｓ−ｖａｌｉｄａｔｉｏｎ）（測定誤差に関してなど）の後、測定された歩留まりは、プランニングモデル２００を更新するために使用されることが可能で、マスタＭＰＣコントローラ３０２は、より正確な有益な生産計画を生成することができる。
【００５８】
カスケード型アーキテクチャ３００は、図３Ｃに示されるように、制御階層図３５０を提供する。カスケード型アーキテクチャ３００は、プランニングモデル２００のコピーを得て、それを、遅れ及びランプを加えて、ＭＰＣコントローラに合体させる（ｇｒａｆｔ）ことによって、従来の制御及び自動化システムにおける分割線を取り壊す。単位供給量は、ＭＶとして使用され得て、生産在庫は、マスタＭＰＣコントローラ３０２においてＣＶとして使用され得る。マスタＭＰＣコントローラ３０２は、プランニングモデル２００からの全体像を理解し、かつ先進的プロセス制御に対してユニット毎のＭＰＣモデル２５０を使用する、リアルタイム計画実行部である。従って、マスタＭＰＣコントローラ３０２は、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎと共同でプラントを最適化して、全てのユニットの制約を遵守しながら、最良に達成可能な計画を生成することができる。
【００５９】
マスタＭＰＣコントローラ３０２によって使用されるプランニングモデル２００は、２つの部品、すなわち、（ｉ）ＭＰＣ制御用の動的モデル、（ｉｉ）経済最適化用の定常状態モデル（動的モデルの定常状態部分である）、を包含すると考えられ得る。マスタＭＰＣコントローラ３０２は、オフラインプランニング最適化の精度を高めるＭＰＣフィードバックを活用し、それによって、以前には使用できなかったリアルタイム情報を組み入れることによって、リアルタイムに理解するほど元の計画に近くなるように、オフラインプランニング最適化を再現する。マスタＭＰＣコントローラのモデル２００のダイナミクスは、プラントのオペレーティングデータから特定されることが可能で、マスタＭＰＣコントローラ３０２は、閉ループでの所望の在庫／特性制御を提供することができる。マスタＭＰＣコントローラ３０２からの制御及び最適化ソリューションは、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎからのオペレーティング制約を遵守することから、これは、マスタＭＰＣコントローラ３０２に、閉ループで実行することを可能にさせ、ＭＰＣカスケードを可能にする。このことは、集中型コンパクトプラントレベルの最適化とユニットレベルの分散型ＭＰＣ制御の両方を提供しつつ、行われる。
【００６０】
マスタＭＰＣコントローラ３０２の多変数制御機能性は、あるタイプの生産コントローラ、又はその主要ＣＶとして在庫レベルを使用する在庫コントローラに相当することができる（「在庫」は、本明細書では、現在の状態において、予測される今後の状態において、又はその両方での物質／エネルギー／などの累積量を指す）。各単位変更量（又はＭＶ）は、マスタＭＰＣコントローラ３０２を通して直接に、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎを介して間接的に、又はプロセスコントローラ３０６ａ〜３０６ｍ（ＲＭＰＣＴコントローラなど）を介して間接的に、構成され得る。各スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、各ユニットの変更量内の「余地」を予測することができ（以下に説明されるプロキシ制限を介して）、マスタＭＰＣコントローラ３０２は、ユニットが受け入れることができない変更量を要求することを控えることができる。マスタＭＰＣコントローラ３０２は、物質／エネルギー収支（モデル／制約）用のＣＶをさらに含むことができる。
【００６１】
マスタＭＰＣコントローラ３０２は、プランニングモデルを使用して、経済最適化動作を行うのに適した任意の構造を含む。マスタＭＰＣコントローラ３０２は、例えば、単入力単出力（ＳＩＳＯ：Ｓｉｎｇｌｅ  Ｉｎｐｕｔ  Ｓｉｎｇｌｅ  Ｏｕｔｐｕｔ）コントローラ、多入力多出力（ＭＩＭＯ：Ｍｕｌｔｉｐｌｅ  Ｉｎｐｕｔ  Ｍｕｌｔｉｐｌｅ  Ｏｕｔｐｕｔ）コントローラ、又はその他の個数の入力及び出力を備えたコントローラに相当することができる。各スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、マスタＭＰＣコントローラと相互作用するのに適した任意の構造を含む。各スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、例えば、ＳＩＳＯコントローラ、ＭＩＭＯコントローラ、又はその他の個数の入力及び出力を備えたコントローラに相当することができる。
【００６２】
プロキシ制限
マスタＭＰＣコントローラ３０２は、縮約モデルを使用する独立したＭＰＣコントローラである。マスタＭＰＣコントローラ３０２が、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎにわたってカスケード接続するために、マスタＭＰＣコントローラ３０２は、スレーブコントローラ３０４ａ〜３０４ｎの制約を遵守し、そうしなければ、組み合わされたソリューション全体が、実装に対して最適でもなく、実行可能でさえもない可能性がある。この状況の回避を手助けするために、プロキシ制限は、多スケールモデルを併合するために使用される。プロキシ制限は、マスタＭＰＣコントローラの空間におけるスレーブＭＰＣコントローラの制約の代替え的な表示である。プロキシ制限は、スレーブＭＰＣコントローラの制約をマスタＭＰＣコントローラに「移す」ための、個々のスレーブＭＰＣコントローラとマスタＭＰＣコントローラとの間のコンジットとして表示され得る。複数のスレーブＭＰＣコントローラ３０４ａ〜３０４ｎからのプロキシ制限は、マスタＭＰＣコントローラの制御及び経済最適化定式に組み合わされ、含まれ得る。
【００６３】
プロキシ制限は、マスタＭＰＣコントローラ３０２のＭＶ空間において表示され得るが、それらの境界値は、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎのＭＶ空間において計算され得る。マスタＭＰＣコントローラ３０２のＭＶ毎に、その下流スレーブＭＰＣコントローラのそれぞれは、１つ又は複数のスレーブＣＶ又はＭＶが、それらのオペレーティング制限に達するようになる前に移動することができる距離分を予測することができる。マスタＭＰＣコントローラ３０２からの２つ以上のＭＶが、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎに関連付けられている場合、プロキシ制限は、本質的に、多変量であり得る。
【００６４】
図４は、本開示による、カスケード型ＭＰＣアーキテクチャにおけるプロキシ制限の例示的な使用を示す。具体的には、図４は、１つのプロキシ制限がユニット全体を十分に表す、ＦＣＣＵ用のカスケード型アーキテクチャにおけるプロキシ制限の例示的な使用を示す。ＦＣＣＵの原材料は、マスタＭＰＣコントローラ３０２用のプランニングモデル２００におけるＭＶ４として、またスレーブＭＰＣコントローラ３０４ａ用のＭＰＣモデル２５０におけるＭＶ９として、構成されると仮定する。また、ユニットへの現在の供給量が、３３．５の値を有すると仮定する。さらに、スレーブＭＰＣコントローラ３０４ａが、供給量が、表４０２に示されるように、１つ又は複数のスレーブＣＶ及び／又はＭＶが１つ又は複数の制限に達するようになる前に、３８．１の最大値まで増やされることが可能であると予測すると仮定する。表４０２は、本明細書では、スレーブＭＰＣコントローラ３０４ａによって制御される種々のＣＶと、それらのＣＶを制御するためにスレーブＭＰＣコントローラ３０４ａによって使用される種々のＭＶを示す。３８．１の最大境界値は、マスタＭＰＣコントローラ３０２に受け入れられ、マスタＭＰＣコントローラのＭＶ４用の高プロキシ制限として使用される。
【００６５】
各ユニットにおいて、どのくらい多くのスレーブ制約が、マスタＭＰＣコントローラのＭＶ（単位供給量など）を制限することができるかに関わらず、マスタＭＰＣコントローラ３０２のみが、そのＭＶを強要することを止めるべき点を知る必要がある（そうでない場合、いくつかの下位レベルの制約違反が生じる可能性がある）。この停止点は、マスタＭＰＣコントローラのＭＶを制限することのできる、対応する下位レベルのユニットにおける有効なスレーブ制約のセット全体に相当する、プロキシ制限と一致する。上記の具体的な例において、複数のプロキシ制限も使用され得るが、下位レベルのＦＣＣＵユニットにおける全てのスレーブ制約に対して、ただ１つのプロキシ制限が必要とされる。
【００６６】
プロキシ制限の１つの特徴は、ユニット内の全てのスレーブＭＰＣ制約が、不要な要素を取り除いて、１つ又はいくつかのプロキシ制限にされ得ることである。従って、プロキシ制限は、マスタＭＰＣコントローラ３０２に、粗いスケールのモデル２００を、それを細かいスケールのスレーブＭＰＣモデル２５０と効果的に併合しつつ、そのままの状態で保持するための結束機構として機能する。言い換えれば、このことは、マスタＭＰＣコントローラ３２０内部のプラント全体の最適化問題を、粗いスケールのモデル２００が互換性のある細かいスケールのモデルに拡張されるようにすることなく、その元のコンパクトプランニング形式に保持することを可能にする。
【００６７】
プロキシ制限の助けで、カスケード型ＭＰＣ手法を使用する一体化最適化ソリューションは、様々な利益をもたらす。例えば、埋込み式リアルタイムプランニングソリューションは、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎにおけるユニットレベルのオペレーティング制約を遵守し、マスタＭＰＣコントローラ３０２は、オフラインプランニングツールが開ループで管理すると考えられる同じ変数組（在庫又は品質など）を動的に制御する。事実上、ユニット内の全ての関連のＭＰＣ制約は、不要な要素が取り除かれて、１つ又は複数のプロキシ制限にされ、今度は、マスタＭＰＣコントローラの最適化に含まれることになる。さらに、プロキシ制限は、１つのレイヤよりも、多レイヤの最適化に目が行くようにする。さらに、開ループ最適化ソリューションの手動調整又は変換の慣例は、減らされるか又はなくされることが可能である。プランニングモデルと制御モデルの両方をオンラインで交差活用することによって、カスケード型ＭＰＣ手法は、閉ループ制御システム内でのプラント全体の最適化を、リアルタイムで実行することを可能にする。従って、カスケード型ＭＰＣ手法は、プラントレベルにおける粗いスケールのプランニングモデル２００での集中型最適化と、ユニットレベルにおける細かいスケールのＭＰＣモデル２５０での分散型制御を、同時に提供する。
【００６８】
プロキシ制限とカスケード接続するＭＰＣの概念は、スレーブコントローラとしてのレベル３  ＭＰＣコントローラで行われるとして、説明されたことに留意されたい。しかしながら、この概念は、制御及び自動化システムの種々のレベルで使用され得るか、又はそれらのレベルにまで及ぶことが可能である。例えば、プラント内の複数のカスケード型アーキテクチャ３００におけるマスタＭＰＣコントローラは、プラントレベルのマスタＭＰＣコントローラに対して、スレーブＭＰＣコントローラを形成することができる。特定の例として、石油／ガス精製所用のプラントレベルのマスタＭＰＣコントローラは、単純な歩留まりベクトル（１つの投入原材料としての原油、複数の産出原材料としての精製製品）を使用することができる。同様に、複数のプラントレベルのマスタＭＰＣコントローラは、エンタープライズレベルのマスタＭＰＣコントローラに対して、スレーブＭＰＣコントローラとして機能することができる。特定の例として、種々の精製所が種々の市場に関係している場合、複数の精製所にわたるエンタープライズレベルのマスタＭＰＣコントローラは、地域の製品需要／供給と、各精製所の生産能力に基づいて、全体的な最適値をリアルタイムで計算することができる。
【００６９】
ユーザエクスペリエンスを高めるための多スケールソリューション
カスケード型ＭＰＣアーキテクチャ３００が、１組のモデルを使用することから、プランニングモデル２００は、自然に、プラントの明瞭な鳥瞰図を備えるグラフィカルユーザインターフェース（ＧＵＩ：Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を提供するために使用され得る。図５は、本開示による、カスケード型ＭＰＣアーキテクチャと共に使用するための例示的なＧＵＩ５００を示す。ＧＵＩ５００は、プランニングモデル２００内の種々のユニット２０２を特定する様々なアイコン５０２を含む。マスタＭＰＣコントローラ３０２は、ＧＵＩ５００内に様々な情報を提供することができる。例えば、マスタＭＰＣコントローラ３０２は、単位生産量、使用可能な在庫、予定製品出荷、経費構造、総利ざや、その利ざやに対する各ユニットの寄与、及び生産計画のリアルタイム実行に付随するその他の関連情報を提供することができる。
【００７０】
マスタＭＰＣコントローラ３０２はまた、オペレータに、どのユニットがプラント全体の障害となっているかを、それらのユニットのプロキシ制限を見ることによって、ＧＵＩ５００内で容易に特定することを可能にさせる。少なくとも１つの有効なプロキシ制限を有するユニット２０２であれば、ユニットの処理量が、実際に、そのスレーブＭＰＣコントローラ内部の下位レベルの制約によって制約されている場合などの、全体的な障害である。これらのユニットは、明瞭な「一目瞭然の」図を提供するＧＵＩ５００において、色付きマルなどの指標５０４を使用して、グラフィカルに特定され得る。限界利益値は、任意選択で、各障害ユニットの次に表示され、ユニットの処理量が増加している場合、プラントが達成し得る利益の増加分を示すことができる。
【００７１】
オペレータ（生産管理者又は計画立案者など）は、ＧＵＩ５００を使用して、障害ユニットにドリルダウンすることができる。例えば、ＧＵＩ５００において特定のアイコン５０２が選択されると、選択されたユニット２０２用のＭＰＣモデル２５０が、オペレータに表示され得る。表示されたＭＰＣモデル２５０は、ユニットの生産処理量を現在制限している有効な制約を示す、スレーブＭＰＣコントローラのＧＵＩに相当する。ＭＰＣモデル２５０において特定のコントローラが選択されると、表４０２がオペレータに表示され得る。
【００７２】
制約として現在有効である表４０２内の変数（機器又は保守点検の問題などを原因とする）は、指標５０６（色付きマルなど）を使用して特定され得る。表４０２内の特定の変数がオペレータによって選択されると、保守点検ＧＵＩ５０８又はその他のインターフェースが、オペレータに提示され得る。例えば、オペレータは、バルブ制約を選択して、そのバルブ用の保守点検ＧＵＩ５０８を表示することができる。保守点検ＧＵＩ５０８は、バルブが２週間内に保守点検に予定が組み込まれていることを示すことができる。マスタＭＰＣコントローラ３０２と同様に、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、制約が取り除かれた場合（それによって、今度は、処理量を上げるのを促進すると考えられる）、プラントが達成し得る利益の増加分を示す限界利益値を、表４０２内の各有効制約の次に表示することができる。
【００７３】
複雑な設備では、通常、任意の所与の時点で対処される必要のある、ずらりと並んだアクチュエータ及びその他の機器がある。保守点検担当者は、彼らの保守点検作業に優先順位を付けるための適切な手引きをもたない場合が多い。ＡＰＣ保守点検作業及びその他の保守点検作業に対しても同じことが言える。図５に示された方法では、各保守点検作業は、増加利益分でタグ付けされることが可能で、作業リストは、サービス要求時間によってよりもむしろ、利益影響度によって簡単にソートされ得る。障害は、ユニットでの単純な保守点検問題によって引き起こされる場合がよくある。いくつかの利益に影響する項目は、それらの項目を修理しないことの代償を誰も知らないことから、長期間、修理されない状態でいる可能性がある。多層制御システムＧＵＩの場合、保守点検作業は、それらの経済的影響度によって簡単にソートされることが可能であり、新しい経済中心の自動化保守点検枠組みが確立されることが可能である。
【００７４】
寄与値及び寄与経費
図２Ａに戻って参照すると、上記で示されたように、プランニングモデル２００において示されるプロセスユニット２０２は、一般に、様々な中間製品２０８を作り出しつつ、１つ又は複数の投入ストリーム２０４を、１つ又は複数の産出ストリーム２０６に変換するように動作する。マスタＭＰＣコントローラ３０２又はスレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、それらの制御又は最適化動作を行う場合、寄与値及び／又は寄与経費を使用することができる。
【００７５】
各寄与値は、１つ又は複数の最終製品（最終製品は、プロセスシステムによって産出される製品に相当する）を生産するために使用される中間製品に関連付けられ得る。寄与値は、各最終製品及び各最終製品の値段に対するその中間製品の寄与を使用して計算され得る。いくつかの実施形態において、中間製品の寄与値は、以下のように計算される。
【００７６】
【数１】
0006647295.tif 000003
【００７７】
ここで、ｎは、中間製品を使用して産出され得る最終製品の個数を表す。また、Ｃｏｎｔｒｉｂｕｔｉｏｎｉは、第ｉ最終製品を生産するのに専用の中間製品の割合を表し、ＰｒｏｄｕｃｔＰｒｉｃｅｉは、第ｉ最終製品に対する予測の又は現在の市場価格を表す。さらに、ＦｕｒｔｈｅｒＰｒｏｃｅｓｓｉｎｇＣｏｓｔｉは、第ｉ最終製品を生産するのに必要な追加の処理経費を表す（任意選択で、省略されてもよく、又はゼロに設定されてもよい）。
【００７８】
その他の実施形態において、中間製品の寄与値は、以下のように計算される。
【００７９】
【数２】
0006647295.tif 000004
【００８０】
ここで、第ｉ最終製品に対する製品価格は、様々な生産過剰及び生産不足シナリオ、又はその他の状況に対して補正を加えるために調整され得る。例えば、第ｉ最終製品の計画された生産量がその計画を超える場合、最終製品の価格は、保管経費及び今後の注文リスクを考慮して、下げられることが可能である。第ｉ最終製品の計画された生産量がその計画を下回る場合、最終製品の価格は、注文の最終期限に間に合わないことに対する違約金がある場合は、上げられることが可能である。
【００８１】
また、寄与値に対して様々な調整が行われ得ることに留意されたい。例えば、保管が可能な場合、通常高価な中間製品は、次のプランニング期間用に保管され、保持される（現在の期間でのその寄与値を下げるよりもむしろ）。もう１つの例として、過剰な中間製品が、スポット市場で販売され得る場合、より高い寄与値が中間製品に割り当てられ得る。さらに、寄与値は、現在のプランニング期間に関して、及び次のプランニング期間に関して、一緒に結び付けられ、現在の期間の終了時における、ホライズン効果の望ましくない低減を抑えることに役立つことができることに留意されたい。
【００８２】
各寄与経費は、１つ又は複数の原材料製品（原材料製品は、プロセスシステム内に投入される材料に相当する）を使用して、生産される中間製品に関連付けられ得る。寄与経費は、各原材料製品のその中間製品の使用、及び各原材料製品の価格を使用して計算され得る。いくつかの実施形態において、中間製品の寄与経費は、以下のように計算される。
【００８３】
【数３】
0006647295.tif 000005
【００８４】
ここで、ｍは、中間製品を生産するために使用される原材料製品の個数を表す。また、Ｃｏｎｔｒｉｂｕｔｉｏｎｉは、中間製品を生産するのに専用の第ｉ原材料製品の割合を表し、またＦｅｅｄＣｏｓｔｉは、第ｉ原材料製品に対する予測の又は現在の市場価格を表す。さらに、ＵｐｓｔｒｅａｍＰｒｏｃｅｓｓｉｎｇＣｏｓｔｉは、第ｉ原材料製品を処理し、中間製品を生産するために必要とされる処理経費を表す（任意選択で、省略されてもよく、又はゼロに設定されてもよい）。
【００８５】
その他の実施形態において、中間製品の寄与経費は、以下のように計算される。
【００８６】
【数４】
0006647295.tif 000006
【００８７】
ここで、第ｉ原材料製品に対する経費は、様々な生産過剰及び生産不足シナリオ、又はその他の状況に対して補正を加えるために調整され得る。例えば、第ｉ原材料製品の計画された在庫がその計画又は保管能力を超える場合、消費を促進するためにその調整済み経費が下げられることが可能である。第ｉ原材料製品の計画された在庫がその計画又は保管能力を下回る場合、消費を抑えるために、その調整済み経費が上げられることが可能である。また、寄与経費に対して様々な調整が行われ得ることに留意されたい。例えば、原材料製品の調整済み経費がそのスポット市場価格より高い場合、それを生産する代わりに、中間製品を購入するほうが経済的となるか否かを判定するために、「内製対外部調達」分析が使用され得る。
【００８８】
図６は、本開示による、カスケード型ＭＰＣアーキテクチャと共に寄与値及び寄与経費を使用するための例示的な技法を示す。この例では、マスタＭＰＣコントローラ３０２は、（ｉ）そのプランニングモデル、その経済性、及び以前のイテレーションからのデータに基づいて寄与値及び寄与経費を、（ｉｉ）寄与値及び寄与経費並びにプロキシ値に基づいて予測の歩留まりを、反復して特定するように動作する。寄与値及び寄与経費は、スレーブＭＰＣコントローラに、それらの局所最適化ニーズに対して提供され得る。最適なソリューション（最適化された計画など）が見つけられると、マスタＭＰＣコントローラ３０２は、最適化された経済性をスレーブＭＰＣコントローラ３０４ａ〜３０４ｎに提供する。寄与値を使用することに関連したマスタＭＰＣコントローラ３０２の動作に関する追加の詳細は、米国特許出願公開第２０１１／００４０３９９号（その全体が参照により本明細に組み込まれている）において確認され得る。
【００８９】
例示的なプランニングモデル構造
いくつかの実施形態において、マスタＭＰＣコントローラ３０２用のプランニングモデル２００は、１つ又は複数のベースモデルを使用して形成され得る。例えば、２つのベースモデル（処理ユニットモデルとプールタンクモデル）が、プランニングモデルを形成する際に提供され得る。処理ユニットは、１つ又は複数の投入原材料及び１つ又は複数の産出原材料として、モデル化され得る。プールタンクは、混合タンク又は非混合（保管のみ）タンクとしてモデル化され得る。実装形態に応じて、その他の又は追加のベースモデルが、使用され得ることに留意されたい。
【００９０】
図７〜９は、本開示による、カスケード型ＭＰＣアーキテクチャにおいて、プランニングモデルを形成するための例示的なベースモデルを示す。図７及び８は、処理ユニット用の例示的なモデルを示し、図９は、プールタンク用の例示的なモデルを示す。
【００９１】
図７に示されるように、１つの投入原材料と複数の産出製品との間の物質収支用に、以下の伝達関数が使用され得る。
【００９２】
【数５】
0006647295.tif 000007
【００９３】
ここで、ｙｉは、第ｉ製品に対するベース歩留まりであり、Δｙｉは、ベクトル（ｍ１要素の）である。また、
【００９４】
【数６】
0006647295.tif 000008
【００９５】
ここで、ｖｇは、ボリュームゲインであり、ここで、
【００９６】
【数７】
0006647295.tif 000009
【００９７】
このモデル形式は、プランニングモデルにおいて一般に使用される構造に一致する。厳密には、このモデル形式は、それが二次ゲインでの線形ダイナミクスを有するような線形モデルではない。モデルは、単位当たり１つの投入原材料を有し、産出製品の各特性は、製品ドロー（ｐｒｏｄｕｃｔ  ｄｒａｗ）と同様の時定数及び遅れを有する。表２は、同じ手法を使用して自然に複数の原材料に及ぶことが可能であるが、１つの原材料フローに対する定常状態ゲインマトリックスを示す。
【００９８】
【表２】
0006647295.tif 000010
【００９９】
図８に示されるように、以下の伝達関数は、投入原材料の第ｉ特性を第ｊ製品の第ｉ特性に変換するために使用され得る。
【０１００】
【数８】
0006647295.tif 000011
【０１０１】
ここで、Ｇｃｊは、ベクトル（ｍ２要素の）であり、Ｇ０Ｊは、「通過」ＤＶゲインである。この手法は、製品の各特性が、製品ドローと同様の時定数及び遅れを有し、初期化によって、それらの各特性が、同じ値に設定され得ると仮定する。この手法はまた、特性がＭＰＣコントローラによって影響され得る（又は制御され得る）と仮定する。表３は、再び同じ手法を使用して自然に複数の原材料に及ぶことが可能であるが、１つの原材料のマテリアルフロー（ｍａｔｅｒｉａｌ  ｆｌｏｗ）及び特性の両方に対する定常状態ゲインマトリックスを示す。
【０１０２】
【表３】
0006647295.tif 000012
【０１０３】
この方法で定義される処理ユニットモデルのダイナミクスを得るために、様々な技法が使用され得る。例えば、ダイナミクスは、履歴データから推定され、工学技術の知識で検証され、短時間の段階的なテストの間に特定されるか、又は動作中に推定され得る。処理ユニットの集中歩留まり（ｌｕｍｐｅｄ  ｙｉｅｌｄ）（ベース歩留まりよりもむしろ）がリアルタイムで更新される場合など、バイアス更新及び歩留まり検証も、起こる可能性がある。様々な誤差補正スキームも、マスタＭＰＣコントローラプランニングモデルで使用され得る。第１の誤差補正スキームでは、歩留まりは、投入流量から直接に計算されることが可能で、平均歩留まり（過去の時間窓範囲内）は、同様の時間窓にわたって今後の平均歩留まりを予測するために推定され、使用され得る（時間窓の幅はチューニング可能であり得る）。推定の歩留まりは、集中歩留まり値が更新される前に、内部の予測可能性閾値（場合によってチューニング可能）に合格しなければならない可能性があることに留意されたい。ゲイン更新は、モデル予測精度を上げることができ、検証されたゲインは、今後の集中歩留まりでのより良い予測可能性を有することができる。第２の誤差補正スキームでは、バイアス更新機構が、マスタＭＰＣモデル予測内部のバイアスを更新するために使用され得る。
【０１０４】
図９は、一般的なプールタンク９００の例示的なモデル化を示す。プールタンク９００は、設備内で製造される物質（１つ又は複数の中間製品など）を保管するために使用される構造を表す。上記の図２Ａで示された貯蔵タンク２１０は、プールタンクの例である。物質の複数のストリーム（Ｆｉｎ）がタンク９００に流れ込み、各ストリームは、ｒ特性を有する。また、物質の複数のストリーム（Ｆｏｕｔ）は、タンク９００から流れ出て、全てのストリームは同じ特性を有する。現在の量は、Ｖで表され、同様の特性を有する投入ストリームは、プールタンク９００にまとめてプールされると仮定することができる。以下で説明されるモデルが、中間製品をプールするために使用されるタンク用であり、最終製品のブレンディングに適する、又は適さない可能性があることに留意されたい。また、その他の手法（非線形補正項又は非線形ブレンディング法を使用する手法など）も使用され得るが、線形混合ルールが、測定フィードバーク用に十分に正確であるように、投入ストリームが同様に十分であり得ることに留意されたい。
【０１０５】
プールタンク９００のモデルでは、以下の物質収支の数式が使用され得る。
【０１０６】
【数９】
0006647295.tif 000013
【０１０７】
以下の数式が第ｉ量的特性のブレンディングを表すために使用され得る。
【０１０８】
【数１０】
0006647295.tif 000014
【０１０９】
【数１１】
0006647295.tif 000015
【０１１０】
【数１２】
0006647295.tif 000016
【０１１１】
以下は、ラプラス変換と再編成を使用して得られ得る。
【０１１２】
【数１３】
0006647295.tif 000017
【０１１３】
以下のように、石油及びガスシステムにおいて、ブレンディングボーナスも使用され得る。
【０１１４】
【数１４】
0006647295.tif 000018
【０１１５】
表４は、一般的なプールタンクのモデル化をまとめている。
【０１１６】
【表４】
0006647295.tif 000019
【０１１７】
仮定は、ここでは、投入流量がそれらの特性よりも頻繁に変動することと、投入−産出変数が、適切に測定され得る（自動化された方法又は試験所において）ことを含む。
特に、ベースモデル構造を使用することの利点は、制限された個数のベース構造（上の例では２つなど）をデザインすることを含み、この場合、ベース構造は、ユニットとタンクがどのように接続されるかの面で柔軟性をもたらす。例えば、処理ユニットとプールタンクは、構成後に固定されることが可能で、在庫量／特性の状態は、動的に追跡され得る。処理ユニットとプールタンクの間の接続は、ステートレス（ｓｔａｔｅｌｅｓｓ）で、オンザフライで変更され得る。その上、マスタＭＰＣコントローラ用のプランニングモデルは、オンザフライで構成され得る。さらに、カスケード型アーキテクチャは、中間の投入−産出信号が適切に測定され得る限り、中間のフィードバックを簡単に活用することができ、この手法は、その構造が実際の処理ユニットとより自然に整合するように、改善されたモデル更新をサポートすることができる。
【０１１８】
モデル検証技法
制御及び自動化システムのマスタＭＰＣコントローラ３０２又はその他の構成要素は、マスタＭＰＣコントローラ３０２によって使用されるプランニングモデルを検証するために、検証技法を実装することができる。図１０は、本開示による、カスケード型ＭＰＣアーキテクチャにおいて、プランニングモデルを検証するための例示的な技法を示す。図１０では、各スレーブＭＰＣコントローラ３０４ａ〜３０４ｎが少なくとも１つのプロセス要素（処理ユニット又はプールタンク）１００２ａ〜１００２ｒに関連付けられる場合の、コントローラ及びその他のデバイスの階層が示される。各プロセス要素１００２ａ〜１００２ｒは、それぞれ、関連する歩留まり検証ブロック１００４ａ〜１００４ｒを有する。
【０１１９】
特に、歩留まり検証ブロック１００４ａ〜１００４ｒは、物質収支、エネルギー収支、製品特性又はその他のモデル化更新の包絡線計算を含むモデル検証をサポートする。プランニングモデルは、物質、エネルギー、又はその他の要因がモデルにおいてバランスが取れているか確認することによって検証され得る。包絡線計算は、重量又は同等値において行われることが可能で、その結果は、ユーザの選択に基づく種々の単位で提示され得る（重量又は体積など）。温度／密度の補正係数が使用されることが可能で、値は、共通単位（バレル又はトンなど）に換算され得る。特定の業種での物質計量において一般に使用される慣例が、サポートされ得る。
【０１２０】
検証において、様々なその他のデザイン問題が考えられ得る。例えば、いくつかの測定が、断続的、不十分、非定期的、欠けている、延期される、又は部分的に架空である可能性があり、スキーム（フィルタリング又はバイアス更新など）が、このような変則に対処するために使用され得る。また、ある場合、物質は、（計画外又は測定不能の）規格外のマテリアルリサイクルがある場合、バランスを保てない可能性があり、任意の適切な方法（ユーザ入力などに基づく）で対処され得る。さらに、いくつかのストリームの歩留まりが、保守点検又は異常なプロセス状態を原因として、ある期間でのそれらの「正常」値とは著しく異なる場合があり、再び任意の適切な方法（ユーザ入力などに基づく）で対処され得る。
【０１２１】
歩留まり検証ブロック１００４ａ〜１００４ｒは、上で説明されたような集中歩留まりのバイアス更新及び歩留まり検証もサポートすることができる。例えば、歩留まり検証ブロック１００４ａ〜１００４ｒは、物質収支及び量／温度補正を加えることによって、リアルタイムの歩留まりを測定し、それらを交差検証する（ｃｒｏｓｓ−ｖａｌｉｄａｔｅ）ことができる。歩留まり検証ブロック１００４ａ〜１００４ｒは、上で説明された第１の誤差補正スキームを行うこともできる。
【０１２２】
マスタ−スレーブ変数に対処するための技法
上で説明されたプロキシ制限は、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎからの制約が、マスタＭＰＣコントローラ３０２に受け入れられることを可能にする。図１１及び１２は、本開示による、カスケード型ＭＰＣアーキテクチャにおけるマスタＭＰＣコントローラ及びスレーブＭＰＣコントローラにおいて、変数をリンクするための例示的な技法を示す。この技法は、マスタＭＰＣコントローラ３０２に、その動作中に、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎの制約を考慮することを可能にさせる。しかしながら、その他の手法も使用され得ることに留意されたい。
【０１２３】
図１１に示されるように、マスタＭＰＣコントローラ３０２は、マスタＭＰＣコントローラ３０２によって使用される種々のＭＶ又はＤＶを特定するＭＶ／ＤＶ指標１１０２を有する。マスタＭＰＣコントローラ３０２によって制御される様々なＣＶ１１０４は、それらのＭＶ又はＤＶに影響される可能性がある。スレーブＭＰＣコントローラ３０４ａ〜３０４ｂによって使用される種々のＭＶ又はＤＶを特定するＭＶ／ＤＶ指標１１０６もある。スレーブＭＰＣコントローラ３０４ａ〜３０４ｂによって制御される様々なＣＶ１１０８〜１１１０は、それらのＭＶ又はＤＶに影響される可能性がある。コンジョイント変数（ｃｏｎｊｏｉｎｔ  ｖａｒｉａｂｌｅ）は、マスタＭＰＣコントローラとスレーブＭＰＣコントローラの両方における同じ変数に相当する（上に説明されたようなマスタコントローラにおけるＭＶ４、スレーブコントローラにおけるＭＶ９など）。コンジョイント変数は、マスタ及びスレーブＭＰＣコントローラにおいて、ＭＶ又はＤＶとして構成され得る。
【０１２４】
マスタ及びスレーブＣＶ制約は、ＭＶ／ＤＶ指標１１０２での値を、ＭＶ／ＤＶ指標１１０６での対応する値に関連付けることによって、結合され得る。このことは、ＭＶ／ＤＶイン指標１１０２及びＭＶ／ＤＶ指標１１０６によって特定された変数が、コンジョイント変数であることを示す。このことは、マスタＭＰＣコントローラ３０２のプラント全体の最適化に、スレーブＭＰＣコントローラ３０４ａ〜３０４ｂからのＣＶ制約のいくつか又は全てを含むことを可能にさせる。
【０１２５】
図１２に示されるように、スレーブＭＰＣモデルマトリックスがわずかであるとき、スレーブＭＰＣコントローラの少なくとも１つのＣＶは、プロキシ制限を介してマスタＭＰＣコントローラに「昇格」することができる。プロキシ制限は、ＭＶ／ＤＶ指標１１０６の対応する列に関連するＭＶ／ＤＶ指標１１０２の列に現れる。例えば、スレーブＭＰＣコントローラにおけるＣＶ制約が以下のように表されると仮定する。
【０１２６】
【数１５】
0006647295.tif 000020
【０１２７】
このＣＶ制約は、この数式を使用して、マスタＭＰＣコントローラにおけるＣＶプロキシ制限として使用され得る。
【０１２８】
【数１６】
0006647295.tif 000021
【０１２９】
これは、スレーブＭＰＣコントローラの制約が、マスタＭＰＣコントローラに受け入れられ、それによって使用されることが可能である、１つの例示的な方法を表す。
例示的な方法
図１３は、本開示による、産業用プロセス制御及び自動化システムにおいて、カスケード型ＭＰＣコントローラを使用するための例示的な方法１３００を示す。説明を簡単にするために、方法１３００は、制御及び自動化システム１００において動作することのできる、カスケード型ＭＰＣアーキテクチャ３００に関して説明される。方法１３００は、任意のその他の適切なカスケード型ＭＰＣアーキテクチャと共に、任意のその他の適切なシステムにおいて使用され得る。
【０１３０】
図１３に示されるように、ステップ１３０２において、プランニングモデルが、マスタＭＰＣコントローラにおいて得られ、ステップ１３０４において、ＭＰＣモデルが、スレーブＭＰＣコントローラにおいて得られる。このことは、例えば、プランニングモデル２００を生成する、又は単一期間のプランニングモデルなどの、既存のプランニングモデル２００を再利用することを含むことができる。このことは、標準技法を使用するなどによって、ＭＰＣモデル２５０を生成することも含むことができる。
【０１３１】
ステップ１３０６において、カスケード型ＭＰＣアーキテクチャの動作中、照会最適化呼び出しが、マスタＭＰＣコントローラからスレーブＭＰＣコントローラに送信される。照会最適化呼び出しは、スレーブＭＰＣコントローラが、それらのＭＶ値に対して、それらの制約に反することなく何らかの変更が行われ得るか否か（また、どの程度まで変更が行われ得るか）を判定することを要求することができる。ステップ１３０８において、スレーブＭＰＣコントローラは、それらの制約に関連するプロキシ制限値をマスタＭＰＣコントローラに送信することによって、応答する。このことは、例えば、スレーブＭＰＣコントローラが、どの程度まで何らかの変更がそれらのＭＶ値に対して行われ得るか、どの制約が破られる可能性があるかを特定することを含むことができる。これらの機能に関するさらなる詳細が、以下に提供される。
【０１３２】
ステップ１３１０において、プランニングモデルは、プロキシ制限値を使用した最適化動作の間に、マスタＭＰＣコントローラによって操作される。このことは、例えば、マスタＭＰＣコントローラが、複数のスレーブＭＰＣコントローラからのプロキシ制限値を、マスタＭＰＣコントローラの制御及び経済最適化定式において、組み合わせることを含むことができる。同時に、ステップ１３１２において、ＭＰＣモデルは、制御動作の間、スレーブＭＰＣコントローラによって操作される。このことは、例えば、スレーブＭＰＣコントローラが、それらの機能がマスタＭＰＣコントローラによって生成された制御及び経済最適化定式に基づく、標準ＭＰＣ機能を果たすことを含むことができる。この方法では、ステップ１３１４において、一体化プランニング／最適化及び制御機能が、制御及び自動化システムにおいて起こる可能性がある。
【０１３３】
図１３は、産業用プロセス制御及び自動化システムにおいて、カスケード型ＭＰＣコントローラを使用するための方法１３００の１つの例を示すが、様々な変更が図１３に対して行われてもよい。例えば、一連のステップとして示されているが、図１３での様々なステップは、重複して起こる、並行して起こる、異なる順序で起こる、又は任意の回数起こる可能性がある。
【０１３４】
実行可能領域推定
図１４から１８は、本開示によるカスケード型ＭＰＣをサポートするために実行可能領域に関連するプロキシ制限を生成するための例示的技法を示す。スレーブＭＰＣコントローラの制約は、任意の適切な方法で、マスタＭＰＣコントローラのプランニング動作に組み込まれることが可能である。例えば、図１４は、スレーブＭＰＣコントローラの自由なＭＶが、それらの現在の値に固定される場合、スレーブコントローラのＣＶ制約が、マスタコントローラのＭＶ空間１４００にプロットされ得ることを示す。一般に、スレーブコントローラのＭＶ制限は、マスタコントローラのＭＶ空間１４００に単純な境界線として現れ、スレーブコントローラのＣＶ制限は、線形制約として現れる。これらの制限間の実行可能領域１４０２は、スレーブＭＰＣコントローラの全ての制約を満たしつつ、マスタＭＰＣコントローラによって選択され得る値の考えられる組合せを定義する。スレーブコントローラの制約によって定義される実行可能領域１４０２の形は、一般に、多角形又は多面体である。
【０１３５】
図１５に示されるように、スレーブＭＰＣコントローラの自由なＭＶが、その他の値をとる場合（何らかの理由で）、実行可能領域１４０２の形は、変わる。影付きバー１５０２は、これらの制約がどのようにシフトし得るかを示す。同様に、スレーブコントローラのモデルゲインがオンザフライで更新される場合、これらのＣＶ制約の傾斜は、それに応じて変わり得る。
【０１３６】
マスタＭＰＣコントローラとスレーブＭＰＣコントローラとの間に１つのコンジョイント変数がある場合、実行可能領域１４０２の大きさが、図１６に示される実行可能領域１６０２などに、縮小され得る。このことは、ある時点で小さな変更を加えることによって、所与の方向に、マスタＭＰＣコントローラのＭＶ／ＤＶを押したい場合に達成され得る。その場合、実行可能空間の狭い帯のみが使用される。この実行可能領域１６０２の高低の値は、自由なスレーブコントローラのＭＶに対して適切な位置を見つけることによって計算され得る。最大値は、スレーブコントローラがそのＭＶ２値を最大にするための、マスタコントローラからの照会最適化呼び出しによって計算され得る。最小値は、スレーブコントローラがそのＭＶ２値を最小にするための、マスタコントローラからの照会最適化呼び出しによって計算され得る。最大化目的関数は、製品の寄与値とその他の局所最適化構成要素を含むように増大され得る。寄与値の場合、ユニットが、より有益な歩留まりプロファイルにプッシュされ得る。
【０１３７】
マスタＭＰＣコントローラとスレーブＭＰＣコントローラとの間に２つ以上のコンジョイント変数がある場合、実行可能領域１７０２は、図１７に示されるように定義され得る。やはり、実行可能領域１７０２は、スレーブＭＰＣコントローラの様々なＭＶ及びＣＶ制限によって定義される多角形又は多面体を表す。実行可能領域１７０２内部の任意の点は、実行可能である及びスレーブＭＰＣコントローラによって実装され得る最適化ソリューションを作成するために使用することができる。スレーブＭＰＣコントローラにおけるＭＶの現在の値は、実行可能領域１７０２内である現在のＭＶ点１７０４を定義する。
【０１３８】
現在のＭＶ点１７０４を使用して、マスタＭＰＣコントローラは、以下のように実行可能領域１７０２の形を推定することができる。複数の方向１７０６ａ〜１７０６ｄの各々において、マスタＭＰＣコントローラは、スレーブコントローラがＭＶ１又はＭＶ２値を最大に又は最小にするための照会最適化呼び出し（ｉｎｑｕｉｒｙ  ｏｐｔｉｍｉｚａｔｉｏｎ  ｃａｌｌ）を行う。例えば、方向１７０６ａにおいて、マスタＭＰＣコントローラは、スレーブコントローラがそのＭＶ１値を最大にするための照会最適化呼び出しを行う。方向１７０６ｂにおいて、マスタＭＰＣコントローラは、スレーブコントローラがそのＭＶ１値を最小にするための照会最適化呼び出しを行う。方向１７０６ｃにおいて、マスタＭＰＣコントローラは、スレーブコントローラがそのＭＶ２値を最大にするための照会最適化呼び出しを行う。方向１７０６ｄにおいて、マスタＭＰＣコントローラは、スレーブコントローラがそのＭＶ２値を最小にするための照会最適化呼び出しを行う。これらの照会最適化呼び出しによって特定された４つの点は、プランニング最適化を実行するときにマスタＭＰＣコントローラによって使用され得る、推定の実行可能領域１７０８を定義する。この方法で、マスタＭＰＣコントローラは、特定されたソリューションがスレーブＭＰＣコントローラによって実装され得ることを確実にするのを助ける。
【０１３９】
図１７において、マスタＭＰＣコントローラは、４つの異なる方向に関連する照会最適化呼び出しを行うことに留意されたい。しかしながら、照会最適化呼び出しの数及びそれらの照会最適化呼び出しに関連する方向は、変化し得る。一般に、マスタＭＰＣコントローラが、３つ以上の方向に関連する照会最適化呼び出しを行う限り、マスタＭＰＣコントローラは、スレーブＭＰＣコントローラの実行可能領域内の多次元空間を特定することができる。図１８において、例えば、現在のＭＶ点１８０４は、スレーブＭＰＣコントローラの実行可能領域１８０２内にある。マスタＭＰＣコントローラは、４５°間隔の８つの方向１８０６に関連する照会最適化呼び出しを行う。これらの照会最適化呼び出しの結果は、マスタＭＰＣコントローラによってやはり使用され得る推定の実行可能領域１８０８を定義する。
【０１４０】
いくつかの実施形態において、照会最適化呼び出し及び関連機能は、以下のように実装することができる。照会最適化呼び出しに応答して、スレーブＭＰＣコントローラは、以下を最小にすることを要求される：
【０１４１】
【数１７】
0006647295.tif 000022
【０１４２】
ｂＬＯ≦Ａｃｘｃｏｎｊ＋Ａｊｘｆｒｅｅ≦ｂＨｉ  （１８）
ｄｔｘｃｏｎｊ＝０  （１９）
但し、
【０１４３】
【数１８】
0006647295.tif 000023
【０１４４】
図１８に示される例の特定の実装形態において、マスタＭＰＣコントローラは、ｃｔ及びｄｔ値の様々な値で表５に示される８つの照会最適化呼び出しを行うことができる。
【０１４５】
【表５】
0006647295.tif 000024
【０１４６】
表５の最初の４つの呼び出しは、図１７に示される照会最適化呼び出しを行うために使用することができる。
表５に示される照会最適化呼び出しは、４５°間隔になるように方向を定義することに留意されたい。しかしながら、照会最適化呼び出しは、以下のように任意の適切な方向を定義するように拡張され得る。
【０１４７】
【表６】
0006647295.tif 000025
【０１４８】
ここで
【０１４９】
【数１９】
0006647295.tif 000026
【０１５０】
は、ベクトルｃｔのゼロ空間として定義される。この定義は、照会最適化呼び出しが任意の所望の方向で生じることを可能にし、ｎまでの照会最適化呼び出しが、特定の現在のＭＶ点についてマスタＭＰＣコントローラによって行われ得る。
【０１５１】
各照会最適化呼び出しに応答して返される値は、図１２に示されるようにマスタＭＰＣコントローラによってプロキシ制約として使用され得る。例えば、４つまでのプロキシ制約は、図１７に示されるマスタＭＰＣコントローラによって使用することができ、８つまでのプロキシ制約は、図１８のマスタＭＰＣコントローラによって使用され得る。これらのプロキシ制約は、マスタＭＰＣコントローラによって特定される任意のソリューションがスレーブＭＰＣコントローラの実際の実行可能領域内に入ることをマスタＭＰＣコントローラが確実にすることを可能にする。
【０１５２】
前述の手法は、スレーブＭＰＣコントローラのＣＶ／ＭＶ制約によって定義される実行可能空間を概算するための一般的方法を提供する。本手法は、スレーブＭＰＣコントローラの実際の実行可能空間の形又はスレーブＭＰＣコントローラにおける制約の数に関わらず機能する。しかしながら、特定の照会最適化呼び出しに関連する方向を選択してスレーブＭＰＣコントローラの実際の実行可能領域をより厳密に推定するのを助けることもまた可能である。例えば、特定の照会最適化呼び出しに関連する方向は、スレーブＭＰＣコントローラのすぐ近くのＣＶ又はＭＶ制限にほぼ垂直になるように選択することができる。これは、スレーブＭＰＣコントローラのＣＶ制約がその境界線に近づくときに、特に有用である可能性があり、照会最適化呼び出しは、具体的に、そのＣＶ制約を表すために行われ得る。ここで、照会最適化呼び出しは、表７に示されるように定義され得る。
【０１５３】
【表７】
0006647295.tif 000027
【０１５４】
ここで、
【０１５５】
【数２０】
0006647295.tif 000028
【０１５６】
は、ａｊのゼロ空間として定義される。
１つ又は２つのみのコンジョイント変数が上で説明されたが、本明細書に記載の手法は、任意の数のコンジョイント変数に拡張され得ることに留意されたい。本手法は、マスタＭＰＣコントローラが、それらの制約によって定義される実行可能領域でプラントの動作を最適化しつつ、各々のそのスレーブＭＰＣコントローラの制約を考慮することを可能にする。スレーブＭＰＣコントローラのＣＶ／ＭＶ制限は、２次元にプロットされるものとしてここでは示されるが、スレーブＭＰＣコントローラのための実行可能領域は、３次元以上で定義され得ることにも留意されたい。照会最適化呼び出しは、多次元実行可能領域を推定する多次元空間を定義するために、３次元以上で行われ得る。
【０１５７】
図１９は、本開示によるカスケード型ＭＰＣをサポートするためにプロキシ制限を計算するための例示的方法１９００を示す。具体的には、本方法１９００は、マスタＭＰＣコントローラでスレーブＭＰＣコントローラの実行可能領域を推定するために使用することができる。図１９に示されるように、スレーブＭＰＣコントローラの現在のオペレーティング点が、ステップ１９０２で特定される。これは、例えば、マスタＭＰＣコントローラ３０２内の処理デバイスがスレーブＭＰＣコントローラ３０４ａ〜３０４ｎの現在のＭＶ値を特定するステップを含み得る。
【０１５８】
スレーブＭＰＣコントローラの現在のオペレーティング点からの移動の方向が、ステップ１９０４で選択される。これは、例えば、マスタＭＰＣコントローラ３０２内の処理デバイスが所定の方向又はスレーブＭＰＣコントローラ３０４ａ〜３０４ｎのＭＶ／ＣＶ制限を定義する線に垂直な方向を選択するステップを含み得る。照会最適化呼び出しが、どの程度までスレーブＭＰＣコントローラの１つ又は複数のＭＶが選択された方向にステップ１９０６でプッシュされ得るかを特定するために、スレーブＭＰＣコントローラに行われ、どの程度までスレーブＭＰＣコントローラの１つ又は複数のＭＶが選択された方向にプッシュされ得るかの特定表示が、ステップ１９０８で受信される。これは、例えば、マスタＭＰＣコントローラ３０２内の処理デバイスが、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎが、制約に違反すること及びスレーブＭＰＣコントローラ３０４ａ〜３０４ｎから特定表示を受信することなく、どの程度まで選択された方向において１つ又は複数のＭＶをプッシュすることができるかをスレーブＭＰＣコントローラ３０４ａ〜３０４ｎが特定することを要求するステップを含み得る。言い換えれば、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎは、選択された方向においてそのプロキシ制限を特定する。ステップ１９１０でテストされるべき方向がもっとある場合、プロセスは、ステップ１９０４に戻って別の方向を選択し、別の照会最適化呼び出しを発行する。
【０１５９】
全ての方向が照会された後は、スレーブＭＰＣコントローラの実行可能領域の推定値が、ステップ１９１２で生成される。これは、例えば、マスタＭＰＣコントローラ３０２内の処理デバイスが、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎからプロキシ制限によって定義される多次元空間を特定するステップを含み得る。この推定の実行可能領域は、ステップ１９１４でプランニング最適化ソリューションを特定するためにマスタＭＰＣコントローラによって使用される。マスタＭＰＣコントローラ３０２によって特定される推定の実行可能領域は、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎに関連する実際の実行可能領域内にあるので、マスタＭＰＣコントローラ３０２によって特定されるソリューションは、スレーブＭＰＣコントローラ３０４ａ〜３０４ｎについて実行可能であることになる。
【０１６０】
図１９は、カスケード型ＭＰＣをサポートするためにプロキシ制限を計算するための方法１９００の一例を示すが、様々な変更が図１９に行われる可能性があり、例えば、一連のステップとして示されているが、図１９の様々なステップは、重複して起こる、並行して起こる、異なる順序で起こる、又は任意の回数起こる可能性がある。
【０１６１】
結論
本開示は、プランニングと制御との間の隙間を埋める新規のカスケード型ＭＰＣアーキテクチャを提供した。このアーキテクチャは、ユニットレベルにおけるスレーブＭＰＣコントローラなどの、１つ又は複数のスレーブＭＰＣコントローラにわたってカスケード接続されたマスタＭＰＣコントローラを含む。マスタＭＰＣコントローラは、プランニングモデルを使用して、プラント内部の生産在庫、製造活動、及び製品品質を制御するなどを行う。スレーブＭＰＣコントローラは、それらの今後の予測及びオペレーティング制約をマスタＭＰＣコントローラに、プロキシ制限などを介して提供する。多層ＭＰＣカスケードに埋め込まれたリアルタイムプランニングソリューリョンは、下位レベルのオペレーティング制約を遵守し、手動で変換されることをもう必要としない。プランニングモデルと制御モデルの両方をオンラインで交差活用することによって、ＭＰＣカスケードアーキテクチャは、閉ループ制御システム内で、プラント全体の最適化をリアルタイムで実行し、スレーブＭＰＣコントローラを通して、ジャストインタイムの生産計画を自動的に遂行することを可能にする。加えて、マスタＭＰＣコントローラが、スレーブＭＰＣコントローラによって実装され得るソリューションを生成することができるように、マスタＭＰＣコントローラがスレーブＭＰＣコントローラの実行可能領域を推定することを可能にするための技法が、提供される。
【０１６２】
いくつかの実施形態において、本特許書類において説明された様々な機能が、コンピュータ可読プログラムコードから形成され、かつコンピュータ可読媒体に埋め込まれたコンピュータプログラムによって実装又はサポートされる。「コンピュータ可読プログラムコード」という成句は、ソースコード、オブジェクトコード、及び実行可能コードを含む、任意のタイプのコンピュータコードを含む。「コンピュータ可読媒体」という成句は、読み取り専用メモリ（ＲＯＭ：Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクドライブ、コンパクトディスク（ＣＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、デジタルビデオディスク（ＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｃ）、又は任意のその他のタイプのメモリなどの、コンピュータによってアクセスされることが可能な任意のタイプの媒体を含む。「非一時的」コンピュータ可読媒体は、一時的電気信号又はその他の信号を伝送する、有線、無線、光、又はその他の通信リンクを含まない。非一時的コンピュータ可読媒体は、データが永続的に格納され得る媒体と、書き換え可能光ディスク又は消去可能メモリデバイスなどの、データが格納され、後で上書きされることが可能な媒体を含む。
【０１６３】
本特許書類を通して使用されるいくつかの単語及び成句の定義を示すことは有益であり得る。「アプリケーション」及び「プログラム」という用語は、１つ又は複数のコンピュータプログラム、ソフトウェア構成要素、命令セット、手順、機能、オブジェクト、クラス、インスタンス、関連データ、又は適切なコンピュータコード（ソースコード、オブジェクトコード、又は実行可能コードを含む）での実装形態に適合されるそれらの一部を指す。「ｃｏｍｍｕｎｉｃａｔｅ（通信する）」という用語及びそれの派生語は、直接、間接両方の通信を含む。「ｉｎｃｌｕｄｅ（含む）」、「ｃｏｍｐｒｉｓｅ（含む、備える）」という用語、及びそれらの派生語は、制限なしの包含を意味する。「ｏｒ（又は）」という用語は、包含的であり、「ａｎｄ／ｏｒ（及び／又は）」を意味する。「ａｓｓｏｃｉａｔｅｄ  ｗｉｔｈ（に関連する）」という成句及びそれの派生語は、含む、〜内に含まれる、〜と相互接続する、包含する、〜内に包含される、〜に又は〜と接続する、〜に又は〜と結合する、〜と通信可能である、〜と連携する、相互配置する、並置する、〜に近接する、〜に又は〜と結び付けられる、有する、〜の特性を有する、〜への又は〜との関係を有する、あるいは同様のものを含むことを意味し得る。「ａｔ  ｌｅａｓｔ  ｏｎｅ  ｏｆ（少なくとも１つの）」という成句は、項目リストで使用される場合、列挙された項目のうちの１つ又は複数の種々の組合せが使用され得る、またリスト内のただ１つの項目が必要とされ得ることを意味する。例えば、「ａｔ  ｌｅａｓｔ  ｏｎｅ  ｏｆ：  Ａ，Ｂ，ａｎｄ  Ｃ（Ａ、Ｂ、及びＣのうちの少なくとも１つの）」は、Ａ、Ｂ、Ｃ、ＡとＢ、ＡとＣ、ＢとＣ、ＡとＢとＣの組合せのうちのいずれかを含む。
【０１６４】
本開示は、特定の実施形態と、それに一般に関連する方法を説明したが、これらの実施形態及び方法の修正、置換が、当業者には明らかであろう。従って、例示的な実施形態の上の説明は、本開示を定義又は制約するものではない。その他の変更、代用、及び修正もまた、以下の特許請求の範囲によって定義されるような、本開示の趣旨及び範囲から外れない限り、可能である。
【図１】
0006647295.tif 000029
【図２Ａ】
0006647295.tif 000030
【図２Ｂ】
0006647295.tif 000031
【図３Ａ】
0006647295.tif 000032
【図３Ｂ】
0006647295.tif 000033
【図３Ｃ】
0006647295.tif 000034
【図４】
0006647295.tif 000035
【図５】
0006647295.tif 000036
【図６】
0006647295.tif 000037
【図７】
0006647295.tif 000038
【図８】
0006647295.tif 000039
【図９】
0006647295.tif 000040
【図１０】
0006647295.tif 000041
【図１１】
0006647295.tif 000042
【図１２】
0006647295.tif 000043
【図１３】
0006647295.tif 000044
【図１４】
0006647295.tif 000045
【図１５】
0006647295.tif 000046
【図１６】
0006647295.tif 000047
【図１７】
0006647295.tif 000048
【図１８】
0006647295.tif 000049
【図１９】
0006647295.tif 000050