(57)【要約】プラントを制御する制御システムは、プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成するローカルコントローラと、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラによって生成されたリモート制御コマンドを受信するように構成された受信機とを備える。ローカル制御ポリシー及びリモート制御ポリシーは、第１の制御ポリシー又は第２の制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、同じ制御目的及び時間分解能について設計される。プラントは、制御の時間ステップについてのリモート制御コマンドの受信の成功に応じて、リモート制御コマンド又はローカル制御コマンドのいずれかを用いるコントローラである。
2022501717.tif 000002
【特許請求の範囲】
【請求項１】
プラントを制御する制御システムであって、
前記プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成するように構成されたローカルコントローラと、
リモート制御ポリシーに従って前記プラントを制御するためにリモートコントローラによって生成されたリモート制御コマンドを受信するように構成された受信機であって、前記ローカル制御ポリシー及び前記リモート制御ポリシーは、前記ローカル制御ポリシーに従って前記プラントを制御するために、又は、前記リモート制御ポリシーに従って前記プラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、前記プラントの制御の同じ制御目的及び同じ時間分解能について設計される、受信機と、
前記制御の時間ステップについてのリモート制御コマンドの受信の成功の変化によってトリガーされるイベントに応じて、前記リモート制御コマンドを用いた制御と前記ローカル制御コマンドを用いた制御との間で前記プラントの制御を切り替えるように構成されたスイッチャと、
を備える、制御システム。
【請求項２】
前記ローカル制御コマンド及び前記リモート制御コマンドは、制御の時間ステップによって識別され、前記制御システムは、
制御ステップのシーケンスにわたって前記プラントを制御するための制御コマンドのシーケンスを記憶するように構成されたバッファであって、制御の時間ステップについての前記制御コマンドは、前記制御の時間ステップについてのリモート制御コマンド又は前記制御の時間ステップについてのローカル制御コマンドのいずれかである、バッファと、
前記制御の時間ステップにおいて前記プラントを制御するために、前記バッファに記憶された、前記制御の時間ステップについての前記制御コマンドを、前記プラントのアクチュエータに送信するように構成された制御インターフェースと、
を更に備え、前記スイッチャは、前記制御の時間ステップについての前記リモート制御コマンドの受信に成功した場合、前記制御の時間ステップについての前記リモート制御コマンドを前記バッファ内に配置し、受信に失敗した場合、前記制御の時間ステップについての前記ローカル制御コマンドを前記バッファ内に配置するように構成される、請求項１に記載の制御システム。
【請求項３】
前記制御システムは、前記プラントから前記ローカルコントローラ及び前記リモートコントローラにフィードバック信号を送信するように構成されたフィードバック送信機を更に備え、
前記フィードバック信号の各サンプルは、或る時点における前記プラントの状態を示すデータを含み、前記リモートコントローラ及び前記ローカルコントローラは、前記フィードバック信号の同じサンプルに基づいて同じ制御の時間ステップについての前記リモート制御コマンド及び前記ローカル制御コマンドを決定する、請求項２に記載の制御システム。
【請求項４】
前記フィードバック送信機は、前記時点のインジケーションを用いて前記或る時点におけるフィードバックのサンプルをマーキングし、前記フィードバック信号の前記サンプルに基づいて決定される前記リモート制御コマンド及び前記ローカル制御コマンドは、前記或る時点のインジケーションを含む、請求項３に記載の制御システム。
【請求項５】
前記リモートコントローラは、予測コントローラであり、前記リモート制御コマンドは、或る時間ホライズンについてのリモート制御コマンドのシーケンスを含み、前記スイッチャは、前記リモートコントローラからの前記制御コマンドのシーケンスの受信に成功すると、前記バッファ内に前記制御コマンドのシーケンス全体を配置する、請求項２に記載の制御システム。
【請求項６】
前記スイッチャは、未来の制御ステップについて決定されたリモート制御コマンドが、前記バッファ内で、前記プラントの状態を測定するセンサからのフィードバック信号のより最近のサンプルに基づいて同じ制御ステップについて決定されたリモート制御コマンドにのみ置き換えられるように、前記バッファ内の送信されていないリモート制御コマンドを、対応するローカル制御コマンドよりも優先する、請求項５に記載の制御システム。
【請求項７】
前記バッファは、１つの制御コマンドのみを含み、前記ローカルコントローラは、フィードバック信号の単一の時点についての単一のローカル制御コマンドを生成し、前記スイッチャは、前記リモート制御コマンドを、対応するローカル制御コマンドよりも優先する、請求項２に記載の制御システム。
【請求項８】
同じ制御の時間ステップについての前記ローカル制御コマンド及び前記リモート制御コマンドは、前記プラントの状態を測定するセンサからのフィードバック信号の同じサンプルに基づいて決定される、請求項１に記載の制御システム。
【請求項９】
前記制御の時間ステップについての制御コマンドを記憶するように構成されたバッファであって、制御コマンドは、前記制御の時間ステップについての前記リモート制御コマンドの受信に成功した場合、前記制御の時間ステップについて前記リモート制御コマンドであり、さもなければ、同じ制御の時間ステップについて前記ローカル制御コマンドである、バッファと、
前記制御の時間ステップにおいて前記プラントを制御するために、前記バッファに記憶された、前記制御の時間ステップについての前記制御コマンドを、前記プラントのアクチュエータに送信するように構成された制御インターフェースと、
を更に備える、請求項８に記載の制御システム。
【請求項１０】
少なくとも１つのリモート制御コマンドは、前記ローカル制御ポリシーの少なくとも１つのパラメータを含み、前記パラメータは、オンラインポリシー反復手順に従って決定され、前記ローカルコントローラは、前記パラメータを受信すると前記ローカル制御ポリシーを更新するように構成される、請求項１に記載の制御システム。
【請求項１１】
前記リモート制御ポリシーは、前記ローカル制御ポリシーとは異なる、請求項１に記載の制御システム。
【請求項１２】
前記リモートコントローラは、最適化コントローラであり、前記ローカルコントローラは、解析コントローラである、請求項１に記載の制御システム。
【請求項１３】
前記リモート制御ポリシーの前記リアプノフ関数は、前記ローカル制御ポリシーに基づいて選択される調節可能パラメータを有する、請求項１に記載の制御システム。
【請求項１４】
前記調節可能パラメータは、前記ローカル制御ポリシーによって制御される前記プラントの軌跡に沿って前記リモート制御ポリシーの前記リアプノフ関数を評価することによって選択される、請求項１３に記載の制御システム。
【請求項１５】
前記リモートコントローラは、モデル予測コントローラであり、第２の制御ポリシーは、第１の制御ポリシーとは異なる、請求項１に記載の制御システム。
【請求項１６】
前記モデル予測コントローラによって最小化されるコスト関数の終端コストは、前記ローカルコントローラの前記ローカル制御ポリシーの関数である、請求項１５に記載の制御システム。
【請求項１７】
前記終端コストは、前記ローカル制御ポリシーの偏微分方程式又は差分方程式の解である、請求項１６に記載の制御システム。
【請求項１８】
プラントを制御する方法であって、前記方法は、前記方法を実施する記憶された命令と結合されるプロセッサを使用し、前記命令は、前記プロセッサによって実行されると、前記方法のステップを実行し、前記方法は、
前記プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成することであって、前記ローカル制御コマンドは、制御の時間ステップによって識別されることと、
リモート制御ポリシーに従って前記プラントを制御するためにリモートコントローラによって生成されるリモート制御コマンドを、ネットワークを介して受信することであって、前記リモート制御コマンドは、前記制御の時間ステップによって識別され、前記ローカル制御ポリシー及び前記リモート制御ポリシーは、第１の制御ポリシーに従って前記プラントを制御するために、又は、第２の制御ポリシーに従って前記プラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、前記プラントの制御の同じ制御目的及び同じ時間分解能について設計されることと、
制御の時間ステップについて前記プラントを制御するための制御コマンドを選択することであって、前記制御の時間ステップについての前記制御コマンドは、前記制御の時間ステップについての前記リモート制御コマンドが前記ネットワークを介して受信された場合、前記制御の時間ステップについて前記リモート制御コマンドであり、さもなければ、前記制御の時間ステップについて前記ローカル制御コマンドであることと、
前記制御の時間ステップにおいて前記プラントを制御するために、バッファに記憶された、前記制御の時間ステップについての前記制御コマンドを、前記プラントのアクチュエータに送信することと、
を含む、方法。
【請求項１９】
同じ制御の時間ステップについての前記ローカル制御コマンド及び前記リモート制御コマンドは、前記プラントの状態を測定するセンサからのフィードバック信号の同じサンプルに基づいて決定される、請求項１８に記載の方法。
【請求項２０】
方法を実行するプロセッサによって実行可能なプログラムが格納された非一時的コンピュータ可読記憶媒体であって、前記方法は、
プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成することであって、前記ローカル制御コマンドは、制御の時間ステップによって識別されることと、
リモート制御ポリシーに従って前記プラントを制御するためにリモートコントローラによって生成されるリモート制御コマンドを、ネットワークを介して受信することであって、前記リモート制御コマンドは、前記制御の時間ステップによって識別され、前記ローカル制御ポリシー及び前記リモート制御ポリシーは、第１の制御ポリシーに従って前記プラントを制御するために、又は、第２の制御ポリシーに従って前記プラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、前記プラントの制御の同じ制御目的及び同じ時間分解能について設計されることと、
制御の時間ステップについて前記プラントを制御するための制御コマンドを選択することであって、前記制御の時間ステップについての前記制御コマンドは、前記制御の時間ステップについてのリモート制御コマンドが前記ネットワークを介して受信された場合、前記制御の時間ステップについて前記リモート制御コマンドであり、さもなければ、前記制御の時間ステップについて前記ローカル制御コマンドであることと、
前記制御の時間ステップにおいて前記プラントを制御するために、バッファに記憶された、前記制御の時間ステップについての前記制御コマンドを、前記プラントのアクチュエータに送信することと、
を含む、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、制御システムに関し、より詳細には、ネットワークを介して受信された制御コマンドを用いてプラントを制御するように適応されたネットワーク化制御システム（networked control system）に関する。
【背景技術】
【０００２】
ネットワーク化制御システム（ＮＣＳ）は、通信ネットワークを通して制御ループが閉じられている制御システムである。ＮＣＳの特徴は、制御信号及びフィードバック信号が、ネットワークを通して、情報パッケージの形式でシステムの構成要素間で交換される、ということである。
【０００３】
ＮＣＳは、サイバー空間を物理空間に接続し、長距離からタスクの実行を可能にする能力を有する。加えて、ネットワーク化制御システムでは、不要な配線がなくなり、制御システムを設計及び実行する際の複雑度及び全体コストが削減される。ネットワーク化制御システムは、比較的低コストで、かつ構造を大幅に変更することなく、センサ、アクチュエータ及びコントローラを追加することによって、容易に改変又はアップグレードすることもできる。さらに、コントローラ間でデータを効率的に共有することを特徴とすることで、ＮＣＳは、グローバルな情報を融合して、大規模な物理空間に対する知的判断を行うことが可能である。
【０００４】
それらの潜在的な応用は、多岐にわたり、広範な産業、例えば、宇宙及び地上探査（space and terrestrial exploration）、有害環境におけるアクセス、ファクトリーオートメーション、遠隔診断及びトラブルシューティング、実験施設、家庭用ロボット、航空機、自動車、製造プラント監視、養護施設並びに遠隔運用などがある。ＮＣＳの潜在的な応用が多数に上る一方で、実証された応用はほとんどなく、ＮＣＳの分野における真のチャンスは、この分野の潜在的可能性を実現する実際のアプリケーションを開発することである。
【０００５】
インターネットの出現及び発展と、それに組み合わされたＮＣＳによって提供される利点は、世界中の研究者の関心を集めた。それらの利点とともに、いくつかの課題も浮かび上がり、多くの重要な研究テーマが生まれた。フィードバック制御ループ内に通信ネットワークを挿入することによって、ＮＣＳの解析及び設計は複雑になる。なぜならば、この挿入によって、制御ループにおける時間遅延又はパッケージ喪失が起こる可能性がある。応用によっては、時間遅延がシステム性能を著しく低下させる可能性がある。
【０００６】
そのため、実用的なＮＣＳ応用では、リモートコントローラは慎重に用いられる。例えば、非特許文献１に記載されているシステムでは、リモートコントローラは基準プロバイダとしてのみ提供される。そのようなリモートコントローラは、安定した制御ループが最適なプロセス動作のための基準入力を提供するために必要な速度よりもはるかに低速で稼働する。加えて、そのようなリモートコントローラでは、閉ループ制御システムの過渡現象を形成するための権限が不十分であり、それゆえ、性能低下を引き起こす可能性がある。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Y. Tipsuwan及びM.-Y. Chow, 「Control methodologies in networked control systems」
【発明の概要】
【発明が解決しようとする課題】
【０００８】
そのため、ＮＣＳとして機能するように適応された制御システムが依然として必要とされている。
【課題を解決するための手段】
【０００９】
いくつかの実施の形態の目的は、ネットワーク化制御システム（ＮＣＳ）を可能にするために、ネットワークを介して制御コマンドを受け入れるのに適した制御システムを提供することである。１つの実施の形態の目的は、ネットワークを介して送信された制御コマンドのうちのいくつかが喪失した場合であっても、確実にプラントの安定制御行う制御システムを提供することである。
【００１０】
いくつかの実施の形態は、制御システムは、プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成するように構成され、その一方で、ネットワークを介して、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラによって生成されたリモート制御コマンドを受信するローカルコントローラを含むことができるという認識に基づいている。いくつかの実施の形態では、リモートコントローラ及びローカルコントローラは、同じ制御目的を有し、同じ時間スケール上で動作するが、目的を達成するために異なる制御則を有することが可能な柔軟性を有している。例えば、ローカル制御ポリシーは、解析形式の解法又は密接な解法を有することができる。その一方で、リモート制御ポリシーは、反復手順によって解かれるように、より精密なものとすることができる。ローカル制御ポリシーの例は、ＰＩＤ制御である。リモート制御ポリシーの例は、モデル予測制御である。
【００１１】
いくつかの実施の形態は、同じ時間スケール及び目的を有する２つの制御ポリシーを交換して用いることができるという理解に基づいている。例えば、いくつかの実施の形態では、リモートコントローラからの制御コマンドがネットワークを介した送付に成功した場合、受信された制御コマンドは、プラントを制御するのに用いられる。送付に失敗した場合、制御にはローカルコントローラによって生成されるローカル制御コマンドが用いられる。
【００１２】
そのため、制御システムは、リモート制御コマンドの受信の成功の変化によってトリガーされるイベントに対応して、リモート制御コマンドを用いた制御とローカル制御コマンドを用いた制御との間でプラントの制御を切り替えるように構成されたスイッチャを備える。特に、スイッチャは、ネットワーク送信の成功が変化すると、ローカルコントローラとリモートコントローラとの間で制御を切り替える。例えば、リモート制御コマンドのネットワーク送信が成功している限り、プラントは、リモート制御コマンドに従って制御され続ける。送信に失敗し、この失敗が送信の成功の変化である場合、プラント制御は、ローカル制御コマンドに切り替えられる。送信が失敗し続ける限り、成功への変化はないので、プラントは、ローカル制御コマンドによって制御され続ける。しかしながら、リモート制御コマンドが再度受信されると即座に、リモート制御コマンドの受信の成功の変化をトリガーとして、リモート制御コマンドを用いた制御に切り替わり、さらに別の成功の変化をトリガーとして次のコマンドの切り替えが起こるまで継続することになる。
【００１３】
そのようにして、リモート制御とローカル制御との間の切り替えは、復旧動作ではなく、共同制御の通常の挙動である。特に、ローカル制御とリモート制御との間の切り替えは、制御の時間スケールによって左右される潜在的な頻度で、急速に発生する可能性がある。いくつかの実施の形態は、リモートコントローラとローカルコントローラとの間の頻繁な切り替えによって、コントローラのそれぞれの制御則において安定制御が保証される場合であっても、そのような共同制御が不安定になり得るという認識に基づいている。
【００１４】
いくつかの実施の形態は、ローカルコントローラとリモートコントローラとの間の制御の切り替えが頻繁に生じる可能性のあるシステムを提供するために、そのようなローカルコントローラ及びリモートコントローラは共同で安定する必要があるという理解に基づいている。いくつかの実施の形態は、共同で安定するために、コントローラは、双方のコントローラの制御ポリシーについての負の時間微分関数を有するように設計された共通リアプノフ関数を有するべきであるという理解に基づいている。
【００１５】
そのため、種々の実施の形態によれば、ローカル制御ポリシー及びリモート制御ポリシーは、ローカル制御ポリシーに従ってプラントを制御するために、又は、リモート制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計される。
【００１６】
いくつかの実施の形態では、共同安定性を有するローカルコントローラ及びリモートコントローラの設計を簡略化するために、リモート制御ポリシーは、ローカル制御ポリシーのために適応される必要があり、その逆ではないという理解に基づいている。これは、リモート制御ポリシーが、通常、ローカル制御ポリシーよりも精密であるためである。いくつかの実施の形態は、単一の制御ポリシーが、負の時間微分関数を有する複数のリアプノフ関数を有することができるという別の理解に基づいている。それゆえ、同じ制御ポリシーについて、別の制御ポリシーに基づいて調節することができる調節可能パラメータを有するリアプノフ関数を設計することが可能である。
【００１７】
例えば、モデル予測制御の場合、リアプノフ関数は、終端コスト（terminal cost）及びステージコスト（stage cost）を含むコスト関数である。ステージコストがプラント状態及び制御コマンドに依存する一方で、終端コストは、ローカル制御ポリシーに基づいて調節することができる終端行列を含む。そのため、共同で安定コントローラを設計するという問題は、調節されたリアプノフ関数もローカル制御ポリシーのリアプノフ関数であるように、リモート制御ポリシーのリアプノフ関数の調節可能パラメータをどのように選択するかという選択又は最適化問題に集約される。いくつかの実施の形態では、ローカル制御ポリシーに対応するシステム軌跡に沿った、リモート制御ポリシーのリモートリアプノフ関数の減衰率を一定にすることで、リモートリアプノフ関数の調節可能パラメータの値を生成し、この問題を解く。いくつかの実施の形態では、ローカル制御ポリシーに対応するシステム軌跡に沿ったリモートリアプノフ関数の減衰率が、時間ステップごとにシステム軌跡に沿ったステージコストを評価することによって得られた値よりも少なくとも低速ではないことを規定している。
【００１８】
したがって、１つの実施の形態は、プラントを制御する制御システムを開示する。制御システムは、プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成するように構成されたローカルコントローラと、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラによって生成されたリモート制御コマンドを受信するように構成された受信機であって、ローカル制御ポリシー及びリモート制御ポリシーは、ローカル制御ポリシーに従ってプラントを制御するために、又は、リモート制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計される、受信機と、制御の時間ステップについてのリモート制御コマンドの受信の成功の変化によってトリガーされるイベントに応じて、リモート制御コマンドを用いた制御とローカル制御コマンドを用いた制御との間でプラントの制御を切り替えるように構成されたスイッチャとを備える。
【００１９】
別の実施の形態は、プラントを制御する方法を開示する。方法は、方法を実施する記憶された命令と結合されるプロセッサを使用する。命令は、プロセッサによって実行されると、方法のステップを実行する。方法は、プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成することであって、ローカル制御コマンドは、制御の時間ステップによって識別されることと、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラによって生成されるリモート制御コマンドを、ネットワークを介して受信することであって、リモート制御コマンドは、制御の時間ステップによって識別され、ローカル制御ポリシー及びリモート制御ポリシーは、第１の制御ポリシーに従ってプラントを制御するために、又は、第２の制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計されることと、制御の時間ステップについてプラントを制御するための制御コマンドを選択することであって、制御の時間ステップについての制御コマンドは、制御の時間ステップについてのリモート制御コマンドがネットワークを介して受信された場合、制御の時間ステップについてリモート制御コマンドであり、さもなければ、制御の時間ステップについてローカル制御コマンドであることと、制御の時間ステップにおいてプラントを制御するために、バッファに記憶された、制御の時間ステップについての制御コマンドを、プラントのアクチュエータにサブミットすることとを含む。
【００２０】
更に別の実施の形態は、方法を実行するプロセッサによって実行可能なプログラムが具現化された非一時的コンピュータ可読記憶媒体を開示する。方法は、プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成することであって、ローカル制御コマンドは、制御の時間ステップによって識別されることと、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラによって生成されるリモート制御コマンドを、ネットワークを介して受信することであって、リモート制御コマンドは、制御の時間ステップによって識別され、ローカル制御ポリシー及びリモート制御ポリシーは、第１の制御ポリシーに従ってプラントを制御するために、又は、第２の制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計されることと、制御の時間ステップについてプラントを制御するための制御コマンドを選択することであって、制御の時間ステップについての制御コマンドは、制御の時間ステップについてのリモート制御コマンドがネットワークを介して受信された場合、制御の時間ステップについてリモート制御コマンドであり、さもなければ、制御の時間ステップについてローカル制御コマンドであることと、制御の時間ステップにおいてプラントを制御するために、バッファに記憶された、制御の時間ステップについての制御コマンドを、プラントのアクチュエータにサブミットすることとを含む。
【図面の簡単な説明】
【００２１】
【図１Ａ】いくつかの実施形態による、ネットワーク化制御システム（ＮＣＳ）を可能にするためにネットワークを介して制御コマンドを受容するのに適した制御システムを示す図である。
【図１Ｂ】いくつかの実施形態による、動作を実行するプラントを制御する制御システムのブロック図である。
【図１Ｃ】いくつかの実施形態によるバッファを形成する方法の概略図である。
【図１Ｄ】１つの実施形態によるリモートコントローラの全体構造を示す図である。
【図２Ａ】いくつかの実施形態による、プラントを制御するＮＣＳの概略図である。
【図２Ｂ】いくつかの実施形態による、プラントを制御するＮＣＳの概略図である。
【図２Ｃ】いくつかの実施形態によるリモート制御ネットワークパケットの構造を示す図である。
【図３】いくつかの実施形態による、メカトロニクスシステムに適用されるＮＣＳアーキテクチャの一例を示す図である。
【図４】いくつかの実施形態による、ローカル制御コマンド及びリモート制御コマンドを協働させる方法を示す図である。
【図５Ａ】いくつかの実施形態による、制御システムのバッファを更新する概略図である。
【図５Ｂ】図５Ａのバッファ更新の例示のシナリオを示す図である。
【図５Ｃ】図５Ａのバッファ更新の例示のシナリオを示す図である。
【図５Ｄ】図５Ａのバッファ更新の例示のシナリオを示す図である。
【図６Ａ】１つの実施形態による、ローカル制御ポリシー及びリモート制御ポリシーを共同で設計する方法のブロック図である。
【図６Ｂ】１つの実施形態による、リモートモデル予測制御（ＭＰＣ）ポリシーを決定する方法のブロック図である。
【発明を実施するための形態】
【００２２】
図１Ａは、いくつかの実施形態による、ネットワーク化制御システム（ＮＣＳ）を可能にするためにネットワーク１０５を介して制御コマンドを受け入れるのに適した制御システムを示している。いくつかの実施の形態は、制御システムが、プラントを制御するためにローカル制御ポリシーに従ってローカル制御コマンドを生成するように構成され、その一方で、ネットワーク１０５を介して、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラ１１５によって生成されたリモート制御コマンドを受信するようにも適応されたローカルコントローラ１１７を含むことができるという認識に基づいている。いくつかの実施の形態では、リモートコントローラ及びローカルコントローラは、同じ制御目的を有し、同じ時間スケール上で動作するが、目的を達成するために異なる制御則を有することが可能な柔軟性を有している。例えば、ローカル制御ポリシーは、或る特定の関数によって等しく表現される解析形式又は閉形式を有することができる。その一方で、リモート制御ポリシーは、反復最適化手順によって解かれるようにより精密なものとすることができる。ローカル制御ポリシーの例は、ＰＩＤ制御である。リモート制御ポリシーの例は、モデル予測制御である。
【００２３】
いくつかの実施の形態は、同じ時間スケール及び目的を有する２つの制御ポリシーを交換して用いることができる（１１０）という理解に基づいている。例えば、いくつかの実施の形態では、リモートコントローラからの制御コマンドがネットワーク１０５を介した送付に成功した場合、受信されたリモート制御コマンドは、プラントを制御するのに用いられる。送付に失敗した場合、制御にはローカルコントローラによって生成されるローカル制御コマンドが用いられる。実際には、図１Ａの制御システムは、ネットワークを介して送信された制御コマンドのうちのいくつかが喪失した場合であっても、確実にプラント１１８を制御する。
【００２４】
そのために、制御システムは、リモート制御コマンドの受信の成功の変化によってトリガーされるイベントに対応して、リモート制御コマンド１２５を用いた制御とローカル制御コマンド１２７を用いた制御との間でプラント１１８の制御を切り替えるように構成されたスイッチャ１２８を備える。スイッチャ１２８は、ネットワーク送信の成功が変化するとローカルコントローラとリモートコントローラとの間で制御を切り替える。例えば、リモート制御コマンドのネットワークが成功している限り、プラントは、リモート制御コマンドに従って制御され続ける。送信に失敗し、この失敗が送信の成功の変化である場合、プラント制御は、ローカル制御コマンドに切り替えられる。送信が失敗し続ける限り、成功への変化はないので、プラントは、ローカル制御コマンドによって制御され続ける。しかしながら、リモート制御コマンドが再度受信されると即座に、リモート制御コマンドの受信の成功の変化をトリガーとして、リモート制御コマンドを用いた制御に切り替わり、さらに別の成功の変化をトリガーとして次のコマンドの切り替えが起こるまで継続することになる。
【００２５】
そのようにして、リモート制御とローカル制御との間の切り替えは、復旧動作ではなく、共同制御１１０の通常の挙動である。特に、ローカル制御とリモート制御との間の切り替えは、制御の時間スケールによって左右される潜在的な頻度で、急速に発生する可能性がある。いくつかの実施の形態は、リモートコントローラとローカルコントローラとの間の頻繁な切り替えによって、コントローラのそれぞれの制御則において安定制御が保証される場合であっても、不安定になり得るという認識に基づいている。
【００２６】
いくつかの実施の形態は、ローカルコントローラとリモートコントローラとの間の制御切り替えが頻繁に生じる可能性のあるシステムを提供するために、そのようなローカルコントローラ及びリモートコントローラは共同で安定する（１４０）必要があるという理解に基づいている。いくつかの実施の形態は、共同で安定するために、コントローラは、双方のコントローラの制御ポリシーについての負の時間微分関数を有するように設計された共通リアプノフ関数１４５を有するべきであるという理解に基づいている。
【００２７】
そのため、種々の実施の形態によれば、ローカル制御ポリシー１１７及びリモート制御ポリシー１１５は、ローカル制御ポリシーに従ってプラントを制御するために、又は、リモート制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計される。実際には、図１Ａの制御システムの共同安定性は、ネットワークを介して送信された制御コマンドのうちのいくつかが喪失した場合であっても、確実にプラント１１８の安定制御が行われる。
【００２８】
図１Ｂは、いくつかの実施形態による、動作を実行するプラントを制御する制御システム１００のブロック図を示している。システム１００の構成要素は、システム１００の種々の構成について変更可能である。構成要素は、プロセッサによって実行されるソフトウェア構成要素、ハードウェア構成要素、又はこれらの組み合わせとして実施することができる。制御システム１００は、システム１００を他のシステム及びデバイスに接続する複数のインターフェースを有することができる。ネットワークインターフェースコントローラ１５０は、バス１０６を通じて、制御システム１００を、リモートコントローラ、例えばリモートコントローラ１１５の出力に接続されるネットワーク１９０にシステム１００を接続するように適応される。いくつかの実施態様では、システム１００内のヒューマンマシンインターフェース１１３は、システムをキーボード１１１及び／又はポインティングデバイス１１２に接続される。ポインティングデバイス１１２は、マウス、トラックボール、タッチパッド、ジョイスティック、ポインティングスティック、スタイラス、又はタッチスクリーンを含むことができる。
【００２９】
インターフェース１１３又はＮＩＣ１５０を通じて、システム１００は、プラントを制御する構成値を受信することができる。構成値の例は、ローカルコントローラ１８０のローカル制御ポリシー、プラントを制御する制御目的、プラントを制御する基準軌跡である。システム１００は、１つ又は複数のセンサ（図示せず）によって測定されるプラント１１８の状態を示すフィードバック信号１６５を送信するフィードバック送信機１６０を備えることができる。システム１００は、システムをプラント１１８のアクチュエータに接続するように適応された制御インターフェース１７０に接続することもできる。
【００３０】
システム１００は、記憶された命令を実行するように構成されたプロセッサ１２０と、プロセッサによって実行可能である命令を記憶するメモリ１４０とを備える。プロセッサ１２０は、シングルコアプロセッサ、マルチコアプロセッサ、コンピューティングクラスタ、又は任意の数の他の構成とすることができる。メモリ１４０は、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、フラッシュメモリ、又は他の任意のメモリシステムを含むことができる。プロセッサ１２０は、バス１０６を通じて、１つ以上の入出力デバイスに接続される。これらの命令は、プラントを制御するネットワーク化制御システム（ＮＣＳ）方法の少なくともいくつかの構成要素及び／又はステップを実施する。
【００３１】
そのために、制御システム１００は、プラント１１８を制御するためにローカル制御ポリシーに従ってローカル制御コマンド１３１を生成するように構成されたローカルコントローラ１８０と、リモート制御ポリシーに従ってプラントを制御するためにリモートコントローラによって生成されたリモート制御コマンド１９５を、ネットワーク１９０を介して受信するように構成された受信機、例えば、ＮＩＣ１５０とを備える。リモート制御コマンド１９５は、更なる処理のためにダウンロードして記憶する（１９６）ことができる。安定性を確保するために、ローカル制御ポリシー及びリモート制御ポリシーは、第１の制御ポリシーに従ってプラントを制御するために、又は、第２の制御ポリシーに従ってプラントを制御するために、負の時間微分関数を有する同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計される。
【００３２】
いくつかの実施態様では、システム１００は、制御ステップのシーケンスにわたってプラントを制御する制御コマンドのシーケンスを記憶するように構成されたバッファ１３５、例えば、メモリセルのシーケンス及び／又はデータ構造を備える。或る制御の時間ステップについての制御コマンドは、その制御の時間ステップについてのリモート制御コマンド１９６又はその制御の時間ステップについてのローカル制御コマンド１３１のいずれかであり、その双方ではない。制御システム１００は、その制御の時間ステップについてのリモート制御コマンドの受信に成功した場合、その制御の時間ステップについてのリモート制御コマンドをバッファ内に配置し、受信に成功しなかった場合、その制御の時間ステップについてのローカル制御コマンドをバッファ内に配置するように構成されたスイッチャ１３３を備える。本明細書において用いられる場合、制御の時間ステップについてのリモート制御コマンドは、リモート制御コマンド全体が、制御の時間ステップについてのスケジューリングされた制御実行時刻の前の時間ウィンドウ内で受信される場合に、受信に成功する。いくつかの実施態様では、制御の時間ステップは、実際の時間を意味するのではなく、制御コマンドの実行順序を意味する。受信に成功するコマンドは、制御の時間ステップによって指定される実行順序によって決定される実行時刻の前に受信される。システム１００は、制御の時間ステップにおいてプラントを制御するために、バッファに記憶された、その制御の時間ステップについての制御コマンドを、プラントのアクチュエータにサブミットするように構成された制御インターフェース１７０も備える。
【００３３】
実際には、制御インターフェースは、ネットワークを介したリモート制御コマンドの受信に成功した場合、そのリモート制御コマンドをアクチュエータに送信し、受信に失敗した場合、ローカル制御コマンドを送信する。ローカル制御ポリシー及びリモート制御ポリシーは、同じリアプノフ関数が存在するように、プラント制御の同じ制御目的及び同じ時間分解能について設計されているので、リモート制御コマンド及びローカル制御コマンドは、制御されるプラントの安定性を脅かすことなく、互いに置換することができる。これにより、ネットワーク送信に関連付けられたレイテンシー及びパケット損失の不利益を被ることなくリモート制御の精密化を利用することができる。
【００３４】
いくつかの実施形態では、ローカル制御コマンド１３１及びリモート制御コマンド１９６は、制御の時間ステップによって識別される。制御の時間ステップによって、ローカル制御コマンド及びリモート制御コマンドの対応関係、並びに制御コマンドのバッファ内での配置順序が確保される。例えば、制御の時間ステップは、ローカル制御コマンド及びリモート制御コマンドを決定するのに用いられるフィードバック信号の時点に対応することができる。例えば、リモート制御コマンド及びローカル制御コマンドが時点ｋにおけるフィードバック信号のサンプルに基づいて決定される場合、リモート制御コマンド及びローカル制御コマンドは、時間ステップｋについてのリモート制御コマンド及びローカル制御コマンドとして識別される。例えば時点ｋ＋１におけるフィードバック信号のサンプルについて決定される後続の制御コマンドは、時間ステップｋ＋１についてのリモート制御コマンド及びローカル制御コマンドとして識別される。
【００３５】
図１Ｃは、いくつかの実施形態によるバッファを形成する方法の概略図を示している。リモートコントローラは、リモート制御コマンドのシーケンス１９６を生成し、ローカルコントローラは、ローカル制御コマンドのシーケンス１３１を生成する。例えば、シーケンスは、互いに独立してフィードバック信号１６５に基づいて生成される。リモート制御コマンド及びローカル制御コマンドは、同じ制御ステップについて、及び／又は、フィードバック信号の同じサンプルに基づいて、同期される。例えば、フィードバック送信機１６０がプラント１１８からローカルコントローラ及びリモートコントローラにフィードバック信号１６５を送信するとき、フィードバック信号のサンプルは、或る時点におけるプラントの状態を示すデータを含む。加えて、フィードバック送信機は、その時点のインジケーションを用いてその時点におけるフィードバック信号のサンプルをマーキングする。リモートコントローラ及びローカルコントローラは、フィードバック信号の同じサンプルに基づいて同じ制御の時間ステップについてのリモート制御コマンド及びローカル制御コマンドを決定する。例えば、ローカル制御コマンド１４９は、リモート制御コマンド１４８と同じ制御ステップについて、及び／又は、フィードバック信号の同じサンプルに基づいて、決定される。
【００３６】
加えて、フィードバック信号のサンプルに基づいて決定されるリモート制御コマンド及びローカル制御コマンドは、その時点のインジケーションを含む。それゆえ、リモート制御コマンド１４８の送信が失敗した場合、例えば、リモート制御コマンド１４８が、このコマンドについての制御の時間ステップの前の指定されたウィンドウ内で受信されなかった場合、スイッチャは、バッファ１３５内に対応するローカル制御コマンド１４９を配置する。
【００３７】
バッファ１３５のサイズは、異なる実施形態の中で変更可能である。例えば、１つの実施形態では、バッファのサイズは１であり、例えば、バッファは単一の制御コマンドのみを保持する。この実施形態では、フィードバック信号の最新のサンプルに基づいて生成される制御コマンドが利用される。例えば、リモートコントローラは、或る予測ホライズンについての制御コマンドのシーケンスを生成する予測コントローラとすることができる。しかしながら、この実施形態では、制御の品質を改善するために、ネットワークを介して第１の制御コマンドのみが送信される。この実施形態は、顧客がネットワーク性能に対して高い信頼度を置いているが、制御ポリシーを設計するのに用いられるプラントのモデルに対しては信頼度が下がる場合に特に有用である。別の実施形態では、バッファは、複数の値を含むことができ、リモートコントローラは、ネットワークを介して、予測ホライズンについて生成された制御コマンドのシーケンスの全体及び一部を送信することができる。この実施形態は、ネットワークパケットが複数の制御コマンドを含むことができるという理解に基づいている。実際には、複数の制御コマンドを単一のパケットにパッキングする（packing）ことにより、ＮＣＳによって用いられるネットワークのスループットが改善する。
【００３８】
図１Ｄは、１つの実施形態によるリモートコントローラ１１５の全体構造を示している。リモートコントローラ１１５は、コントローラのモジュールを実行する少なくとも１つのプロセッサ１７３を備える。プロセッサ１７３は、プラント１１８のモデル１８２、リモート制御ポリシーを定義するコスト関数１８５、及び、任意選択で、プラントの動作に対する制約１８４を記憶するメモリ１７２に作動的に接続される。リモートコントローラ１１５は、プラント１１８のモデル１８２及び状態を用いて、制約１８４を条件とするコスト関数１８５を最適化するリモート制御ポリシーを用いてリモート制御コマンド１９５を決定する。例えば、リモート制御コマンド１９５は、プラント１１８に基準軌跡１９３を追跡するようにコマンドするために決定することができる。リモートコントローラは、送受信機１８３を介してリモート制御コマンド１９５を送信し、プラント１１８のセンサによって測定されるとともに、プラント１１８の状態を示すフィードバック信号１６５を受信する。
【００３９】
図２Ａ及び図２Ｂは、いくつかの実施形態による、プラント２１０３を制御するＮＣＳの概略図を示している。ダミー変数をρとする。定数ｉ≧０を所与とすると、ρ（ｉ｜ｋ）は、時間ステップｋにおいて利用可能な情報、例えばフィードバック信号に基づく、ρ（ｋ＋ｉ）の予測を示し、ρ（ｉ｜ｋ＋１）は、時間ステップｋ＋１において利用可能な情報を用いる予測ρ（ｋ＋ｉ＋１）を表している。簡単に記述すると、ρ（ｋ）＝ρ（０｜ｋ）である。時間ステップｋにおいて、リモートコントローラ２２０１は、基準２１１１と、ネットワーク２１２２を介して通信されるフィードバック信号２１１２ｃとに基づいてリモート制御パケット２２１１を決定し、その後、そのパケットを、スイッチデバイス２２０２に送付するためにネットワークに引き渡す。ネットワーク２１２２は、計算時間、通信時間、負荷のランダム性及び他の受信機／送信機からの干渉、並びに悪意のある侵入等の多くの不確実性を受ける。結果として、リモートコントローラは、検知信号又はフィードバック信号２１１２ｃを受信し、スイッチデバイスは、或る期間の後、リモート制御パケット２２１１を受信する。スイッチデバイス側で受信されたリモート制御パケット２２１２は、パケット２２１１が喪失している場合、何も含まない可能性がある。
【００４０】
ローカルコントローラ２２０３は、ローカル制御ポリシーを採用することと、センサ２１０４からのフィードバック信号２１１２を用いることとによって、ローカル制御コマンド２２１３  ｕｌ（ｋ）を生成する。スイッチデバイス２２０２は、リモート制御パケット２２１１の受信ステータスに従って、制御コマンド２１１３をアクチュエータ２１０２に送信する。アクチュエータ２１０２は、センサ２１０４によって測定されたプラントの状態を変化させるプラントの実際の制御２１１４を可能にする。
【００４１】
いくつかの実施形態では、ローカルコントローラは、図２Ａに示されるように、基準２１１１をローカルに受信する。別の実施形態では、ローカルコントローラは、受信された制御パケット２２１２から基準を推測する。これらのシナリオは、種々の情報をリモート制御パケットにパッケージ化することによって可能にすることができる。例えば、図２Ｂを可能にするために、リモート制御パケットは、リモート制御コマンド及び基準信号２１１１を含むべきである。
【００４２】
いくつかの実施形態では、リモートコントローラは、最適性、不確実性、及び制約に取り組むポリシー、例えば、モデル予測制御、強化学習、及び適応動的計画法（adaptive dynamic programming）を採用する。ローカルコントローラは、閉ループシステム安定性のための計算量の少ない（computationally lightweight）ポリシー、例えば、比例積分微分制御（ＰＩＤ）を実施する。
【００４３】
図２Ｃは、いくつかの実施形態によるリモート制御ネットワークパケット２２１１の構造を示している。図２Ｃに示すように、リモート制御パケットは、リモート制御コマンドｕｒ（ｋ）  ２２１１ａを含むことができる。いくつかの実施形態では、リモートコントローラは、フィードバック信号２１１２ｃ及び基準２１１１に基づいてローカルコントローラのパラメータを最適化する学習メカニズムを実施する。種々の強化学習の実装を、パラメータ最適化を実行するために利用することができる。例えば、近似動的計画技法及び適応動的計画技法を活用して、ローカル制御ポリシーのパラメータを高信頼度で最適化することができる。
【００４４】
一例として、プラントモデルを次のｘ（ｋ＋１）＝ｆ（ｘ（ｋ））＋ｇ（ｘ（ｋ））ｕ（ｋ）として検討する。ここで、ｋは、時間ステップであり、ｘ（ｋ）は、プラント状態であり、ｆ、ｇは、平滑関数のベクトルであり、ｕは、制御入力である。また、ローカルコントローラが初期ローカル制御ポリシーｕｌ０（ｘ）を実施すると仮定し、ステージコストｌ（ｘ（ｋ），ｕ（ｋ））を定義し、ただし、ｌは、平滑関数である。リモートコントローラは、次のようにオンラインポリシー反復手順を実行して、改善されたローカル制御ポリシーを決定し、改善されたローカル制御ポリシーをローカルコントローラに送信することができる。ｊ＝０，１，．．．について、
１．ポリシー評価ステップ：Ｗｊ＋１（φ（ｘ（ｋ））−φ（ｘ（ｋ＋１）））＝ｌ（ｘ（ｋ），ｕｌｊ（ｋ））を満たすパラメータのベクトルＷｊ＋１を求める。ここで、φ（ｘ）は、平滑関数の事前定義されたベクトルである。
２．ポリシー改善ステップ：改善されたローカル制御ポリシー
【数１】
2022501717.tif 000003
を求める。
【００４５】
そのために、１つの実施形態では、少なくとも１つのリモート制御コマンドは、ローカル制御ポリシーの少なくとも１つのパラメータ２２１１ｂを含み、ローカルコントローラは、パラメータを受信するとローカル制御ポリシーを更新するように構成される。加えて、又は代替的に、いくつかの実施形態では、リモート制御ネットワークパケット２２１１は、リモート制御コマンドについての制御の時間ステップ２２１１ｃの識別情報を含む。制御の時間ステップ２２１１ｃは、ネットワーク送信の時間スタンプ、リモート制御コマンドが決定されるフィードバック信号のサンプルのサンプリング、送信又は受信の次数及び／又は時点、ローカルコントローラにおける発生器と同期された自動数発生器（automatic number generator）、例えば、シーケンス番号又は乱数、及びこれらの組み合わせとすることができる。これらの技法は、リモート制御コマンドとローカル制御コマンドとの間の対応関係を決定するのに用いられることに留意すべきである。技法にかかわらず、対応関係は、フィードバック信号のサンプルについて確立され、すなわち、対応するローカル制御コマンド及びリモート制御コマンドは、本明細書では或る時点におけるサンプルとして参照される制御信号の同じサンプルについて決定される。
【００４６】
図３は、いくつかの実施形態による、メカトロニクスシステムに適用されるＮＣＳアーキテクチャの一例を示している。ピックアンドプレースタスクを実行する、メカトロニクスシステム、例えば、多関節ロボットアームを検討する。その動態は、非線形離散時間システムとして表現される。
【数２】
2022501717.tif 000004
ここで、ｋは、時間ステップである。
【数３】
2022501717.tif 000005
は、状態である。
【数４】
2022501717.tif 000006
は、制御２１１３である。ｙは、検知出力である。ｆ、ψは、平滑関数である。状態は、関節の角度及び角速度、並びにロボットアームの先端の位置及び速度を含み、一方、制御ｕは、関節上に取り付けられたモータによって生成されたトルクを含む。検知出力２１１２は、全ての関節又は関連付けられたモータの角度を含む。
【００４７】
図３に示すように、ローカルコントローラ３３０３は、運動計画のみでなく、制御ポリシーｕｌ（ｋ）＝ｈ（ｘｌ（ｋ））の追跡も実施する。運動計画部は、ピックアンドプレース座標、及びタスク時間を基準入力として用いて、ロボットアームのローカル位置又は速度軌跡を計算して追跡する。追跡制御部は、インバータ及びサーボモータ（アクチュエータ）へのローカル制御コマンドを決定する。リモートコントローラ３３０１は、リモート運動計画コントローラ及び追跡コントローラを使用する。リモート運動計画コントローラは、リモート位置又は速度軌跡を計算する。追跡コントローラは、リモート制御コマンドを決定する。ローカルコントローラが展開されるプラットフォームの限られた計算パワーに起因して、ローカルコントローラの運動計画は、通常、時間最適軌跡を生成するが、これは、エネルギー効率を欠いていることに留意されたい。代わりに、高性能のコンピュータ上又はさらにはクラウドコンピュータにおいて存在するリモートコントローラは、多くの仕様、例えば、エネルギー最適性に従って、軌跡を決定することができる。
【００４８】
別の実施形態では、メカトロニクスシステムは、複雑なミリング加工（milling）タスクを実行するコンピュータ数値制御機械とすることもできるし、点間（直線）位置決めタスクを実行するサーボモータ程度の単純なものとすることもできる。
【００４９】
いくつかの実施形態では、ネットワーク２１２２は、有線であり、例えば、Ｅｔｈｅｒｎｅｔ又は種々の産業オートメーションネットワークである。いくつかの実施形態では、ネットワーク２１２２は、ＷｉＦｉ、ＩＳＡ１００、ＷｉｒｅｌｅｓｓＨＡＲＴ、及びＺｉｇＢｅｅ等のワイヤレスである。
【００５０】
図４は、いくつかの実施形態による、ローカル制御コマンド及びリモート制御コマンドを協働させる方法を示している。検知フィードバック信号、制御目的、及び／又は制御基準を含むリアルタイムデータ４０５に基づいて、ローカルコントローラ及びリモートコントローラの双方が、それぞれローカル制御コマンド４１５及びリモート制御コマンド４２５を決定する（４１０／４２０）。いくつかの実施態様では、同じ制御の時間ステップについてのローカル制御コマンド及びリモート制御コマンドは、プラントの状態を測定するセンサからのフィードバック信号の同じサンプルに基づいて決定される。
【００５１】
ローカル制御コマンド４１５は、スイッチャ４３０に常に送付される（送付される可能性が非常に高い）が、一方、リモート制御コマンド４２５は、常に送付されるわけではない（破線によって示される）。スイッチャ４３０は、アクチュエータに対する制御コマンド４３５を決定する。制御コマンド４３５は、その制御の時間ステップについてのリモート制御コマンドの受信に成功した場合、その制御の時間ステップについてリモート制御コマンド４２５であり、さもなければ、同じ制御の時間ステップについてローカル制御コマンド４１５である。
【００５２】
図５Ａは、いくつかの実施形態による、制御システムのバッファを更新する概略図を示している。リモート制御ポリシー及びローカル制御ポリシーがオフラインで決定され、時間ステップｋごとにリアルタイムで展開される状態では、スイッチャは、アクチュエータのための制御コマンドを選択する必要がある。いくつかの実施形態では、リモートコントローラは、予測コントローラであり、リモート制御コマンドは、或る時間ホライズンについてのリモート制御コマンドのシーケンスを含む。この実施形態は、制御コマンドのシーケンスを単一のネットワークパケットにパッキングして、ネットワークスループットを高める。加えて、いくつかの実施態様では、スイッチャは、リモートコントローラからのコマンドのシーケンスの受信に成功すると、バッファ内にコマンドのシーケンス全体を配置する。これらの実施形態では、ローカル制御コマンドがフィードバック信号の最新のサンプルに基づいて決定される場合であっても、ローカル制御コマンドよりもリモート制御コマンドを優先する。実際には、これらの実施形態では、パケットのうちのいくつかがネットワーク送信中に喪失した場合であっても、リモートコントローラのより正確な／性能指向の予測制御を利用することが可能である。
【００５３】
例えば、図５Ａによる１つの実施形態において、スイッチャは、リモート制御パケットを待機する（５０１）。リモート制御パケットが制御コマンドの実行時刻の前の時間ウィンドウ内で受信される事例では、スイッチャは、制御コマンドバッファを更新し（５０４）、リモート制御パケットが上記時間ウィンドウ内で受信されない事例では、スイッチャは、ローカル制御コマンド５１３に基づいて制御コマンドバッファを更新する（５０３）。いくつかの実施形態によれば、スイッチャは、バッファ内のサブミットされていないリモート制御コマンドを、対応するローカル制御コマンドよりも優先する。具体的には、未来の制御ステップについて決定されたリモート制御コマンドが、バッファ内で、プラントの状態を測定するセンサからのフィードバック信号のより最近のサンプルに基づいて同じ制御ステップについて決定されたリモート制御コマンドにのみ置き換えられる。換言すれば、未来の制御ステップについて決定されたリモート制御コマンドは、バッファ内で、フィードバック信号のより最近のサンプルに基づいて同じ制御ステップについて決定されたローカル制御コマンドに置き換えられることはない。実際には、これらの実施形態は、パケットのうちのいくつかがネットワーク送信中に喪失した場合であっても、リモートコントローラのより正確な予測制御を利用することを可能にする。
【００５４】
いくつかの実施形態では、時間ステップｋごとに、スイッチデバイスは、時間ウィンドウＴｋを維持する。リモート制御パケットのリモート受信の到達がＴｋ内に起きなかった場合、スイッチデバイスは、更新５０３を行う。反対に、リモート制御パケットを受信すると、スイッチデバイスは、リモート制御パケットの送信時間スタンプを取り出し、送信時間スタンプが時間ウィンドウＴｋ内に入るか否かをチェックする。送信時間スタンプが時間ウィンドウＴｋ内に入る場合、第ｋのリモート制御パケットは、時間通りに到達し、スイッチデバイスは、更新５０４を実行し、送信時間スタンプが時間ウィンドウＴｋ内に入らない場合、スイッチデバイスは、更新５０３を実行する。
【００５５】
図５Ｂ、図５Ｃ、及び図５Ｄは、図５Ａのバッファ更新の例示のシナリオを示している。図５Ｂは、いくつかの実施形態による、リモート制御コマンドのデータ構造５１１及びローカル制御コマンドのデータ構造５１２／５１３／５１４を示している。これらの実施形態では、リモートコントローラは、事前選択された時間ホライズンＮにわたるモデル予測制御問題を解き、これにより、各時間ステップｋにおいて、以下のリモート制御コマンドのシーケンスが得られる。
【数５】
2022501717.tif 000007
ここで、ｕｒ＊（ｋ）は、時刻ｋにおいてアクチュエータにコマンドすることになっており、ｕｒ＊（ｉ｜ｋ）は、時刻ｋ＋１においてアクチュエータにコマンドすることになっている。同様に、ローカル制御ポリシーは、予測も実行し、以下のローカル制御コマンドのシーケンスを生成する。
【数６】
2022501717.tif 000008
【００５６】
別の実施形態では、また、ローカル制御ポリシーは、予測を組み込み、それゆえ、ローカル制御コマンドｕｌ（Ｎ−１｜ｋ）  ５１３を生成し、これは、時刻ｋ＋Ｎ−１においてアクチュエータにコマンドすることになっている。
【００５７】
いくつかの実施形態では、ローカル制御ポリシーは、予測を一切組み込まず、それゆえ、ローカル制御コマンドｕｌ（ｋ）  ５１４を生成せず、これは、時刻ｋにおいてアクチュエータにコマンドすることになっている。この事例では、スイッチデバイスは、ローカル制御コマンドが必要とされるときを追跡するとともに、指定された時間ステップにおけるローカル制御コマンドについてローカルコントローラを調査する（poll）必要がある。
【００５８】
図５Ｃは、スイッチャが時間ウィンドウ内で最初にリモート制御パケットを受信しないが、後に２つのリモート制御パケットを連続して受信する事例に対応するシナリオについての例示の更新５０３／５０４を示している。ローカルコントローラは、ローカル制御コマンドのシーケンスを生成する。スイッチデバイスの制御コマンドバッファは、時刻ｋ−１において、以下のリモート制御コマンドのシーケンスを記憶することを仮定する。
【数７】
2022501717.tif 000009
【００５９】
ｋステップにおいて、リモート制御パケット２２１１は喪失する。その場合、スイッチデバイスは、ローカル制御コマンドｕｌ（Ｎ−１｜ｋ）を制御コマンドバッファにプッシュし（５０３）、制御コマンドバッファは、データ５１１ｃを与える。これは、閉ループ制御システムの安定性を確実にするために重要である。時間ステップｋ＋１においてリモート制御コマンドシーケンス
【数８】
2022501717.tif 000010
を含むリモート制御パケットがスイッチデバイスによって時間ウィンドウ内で受信された場合、スイッチデバイスは、５１２ｃのように、リモート制御コマンドシーケンスｕｒ＊（ｋ＋１）を用いて制御コマンドバッファを更新する（５０４）。同様に、時間ステップｋ＋２においてリモート制御コマンドシーケンス
【数９】
2022501717.tif 000011
を含むリモート制御パケットがスイッチデバイスによって時間ウィンドウ内で受信された場合、スイッチデバイスは、５１３ｃのように、最新のリモート制御コマンドシーケンスｕｒ＊（ｋ＋２）を用いて制御コマンドバッファを更新する（５０４）。
【００６０】
図５Ｄは、別の例示のシナリオにおけるスイッチャのアクションを示す概略図を示している。一般性を失うことなく、スイッチデバイスの制御コマンドバッファは、時刻ｋ−１において、以下のリモート制御コマンドのシーケンスを記憶することを仮定する。
【数１０】
2022501717.tif 000012
【００６１】
時間ステップｋにおいて、リモート制御パケットは、その指定された時間ウィンドウ内にスイッチデバイスに到達する。その場合、スイッチデバイスは、以下の最新のリモート制御コマンドを用いて制御コマンドバッファを更新する（５０４）。
【数１１】
2022501717.tif 000013
【００６２】
時間ステップｋ＋１において、リモート制御パケットが喪失し、その後、スイッチデバイスは、５１２ｄのようにローカル制御コマンドｕｌ（Ｎ−１｜ｋ＋１）を制御バッファにプッシュし、さらに、時間ステップｋ＋２において、リモート制御パケットが再度喪失し、スイッチデバイスは、５１３ｄのようにローカル制御コマンドｕｌ（Ｎ−１｜ｋ＋２）を制御コマンドバッファにプッシュする。
【００６３】
いくつかの実施形態は、共同安定性を有するローカルコントローラ及びリモートコントローラの設計を簡略化するために、リモート制御ポリシーは、ローカル制御ポリシーのために適応される必要があり、その逆ではないという理解に基づいている。これは、リモート制御ポリシーが通常ローカル制御ポリシーよりも精密であるためである。いくつかの実施形態は、単一の制御ポリシーが、負の時間微分関数を有する複数のリアプノフ関数を有することができるという別の理解に基づいている。それゆえ、同じ制御ポリシーについて、別の制御ポリシーに基づいて調節することができる調節可能パラメータを有するリアプノフ関数を設計することが可能である。
【００６４】
図６Ａは、１つの実施形態による、ローカル制御ポリシー及びリモート制御ポリシーを共同で設計する方法のブロック図を示している。ローカルコントローラ及びリモートコントローラの共同設計は、結果として得られる閉ループ制御システムが安定性を維持するとともに、ローカルコントローラのみが展開されるベースライン閉ループ制御システムに優る性能を有するように実行される。この実施形態は、まず、ローカル制御ポリシー６５５を決定する（６５０）。例えば、ローカル制御ポリシーは、プラントモデル、制御目標、及び基準信号の知識６０５に基づいて決定することができる。例えば、制御目的は、基準信号を追跡することとすることができる。
【００６５】
いくつかの実施形態では、制御目的は、プラント出力に、一定の基準を辿るように強制することであり、別の実施形態では、制御目的は、プラント出力に、可能な限り近く時変基準（軌跡）を追跡するように強制することである。いくつかの実施形態では、制御目的は、プラント状態を安定化することであり、すなわち、時間が限りなく無限大に進むときにｘが或る一定値（平衡点）に近づくことを強制することである。制御目的における所望の出力又はプラント状態を指定することに加えて、タスクが終了するのに要するエネルギー消費及び時間も、制御目的に組み込まれることが可能である。
【００６６】
実施形態は、ローカル制御ポリシー６５５を評価して（６６０）、リモート制御ポリシーについての終端コスト６６５を生成する。例えば、モデル予測制御の場合、リアプノフ関数は、終端コスト６６５を含み、予測ホライズンにわたるステージコスト６５６を総和するコスト関数である。ステージコストがプラントに依存する一方で、終端コストは、ローカル制御ポリシーに基づいて調節することができる終端行列を含む。ステージコストは、各制御ステップにおけるリモート制御のコストである。ステージコストは、コントローラの制御労力とシステム性能とのトレードオフに基づいて、コントローラ設計者によって選択することができる。終端コスト６６５は、リモートコントローラによって引き起こされる制御されるプラントの所望の状態を指定する。
【００６７】
いくつかの実施形態では、リモートコントローラは、予測ホライズンにわたる制御コマンドのシーケンスを決定する予測コントローラである。これらの実施形態では、終端コストは、予測ホライズンの最後における、リモートコントローラによって引き起こされる制御されるプラントの所望の状態を指定する。終端コストは、ローカル制御ポリシーによって制御されるプラントの状態の変化がステージコストよりも高速のレートで終端コストを削減するように選択されるプラントの状態の関数である。いくつかの実施形態では、終端コストを定義する状態のそのような関数を選択するために、実施形態は、プラントの状態、ステージコスト、及びローカル制御ポリシーの関係を記述する偏微分方程式を解く。
【００６８】
終端コスト及びステージコストは、共通リアプノフ関数を構築する（６７０）のに用いられ、共通リアプノフ関数は、リモートコントローラが最適化するためにコスト関数６７５を決定するのに等しい。最終的には、リモートコントローラは、或る特定の時間ホライズンＮにわたってコスト関数６７５を最小化するモデル予測制御としてリモート制御ポリシーを実施する（６８０）。
【００６９】
いくつかの実施形態では、ステージコストは、状態ｘ及び制御ｕの平滑及び正定値関数ｌ（ｘ（ｋ），ｕ（ｋ））として単に定義され、ここで、正定性は、任意のｘ（ｋ），ｕ（ｋ）≠０についてｌ（ｘ（ｋ），ｕ（ｋ））＞０を意味する。いくつかの実施形態では、ステージコストは、ｘ（ｋ）及びｕ（ｋ）の二次関数である。いくつかの実施形態では、ステージコストは、以下のように記述され、
【数１２】
2022501717.tif 000014
ここで、Ｑ及びＲは、正定行列である。
【００７０】
そのために、共同で安定コントローラを設計するという問題は、調節されたリアプノフ関数もローカル制御ポリシーのリアプノフ関数であるようにリモート制御ポリシーのリアプノフ関数の調節可能パラメータをどのように選択するかという選択又は最適化問題に集約される。いくつかの実施形態は、ローカル制御ポリシーに対応するシステム軌跡に沿ったリモート制御ポリシーのリモートリアプノフ関数を評価し、リモートリアプノフ関数の調節可能パラメータの値を生成することによってこの問題を解いた。
【００７１】
図６Ｂは、１つの実施形態による、リモートモデル予測制御（ＭＰＣ）ポリシーを決定する方法のブロック図を示している。これは、ＭＰＣは、制約及び最適性を考慮に入れることによって、リモートコントローラの所望の特徴と一致するので有利であり得る。
【００７２】
いくつかの実施形態では、プラント状態が測定され、すなわち、ｙ＝ｘである。別の実施形態では、プラント状態は、ｙの次元がｘよりも低い場合であっても、ｙから推測することができる。これは、システムが「いわゆる」検出可能性（detectability）を保持する場合、種々の工学システムについて可能である。教示の目的で、本発明は、以下の非線形離散時間システムによってモデル化されるプラントを考慮し、
【数１３】
2022501717.tif 000015
ここで、
【数１４】
2022501717.tif 000016
は、状態である。ｆ及びｇは平滑ベクトル場である。
【数１５】
2022501717.tif 000017
は、制御入力である。ｙは、出力である。
【数１６】
2022501717.tif 000018
及び
【数１７】
2022501717.tif 000019
の双方が凸でありかつコンパクトである。ただし、各セットがその内部における原点を含む。制御目的は、状態を原点ｘ＝０に導き、それと同時に、或る特定のコスト関数を最小化することである。コスト関数は、安定性及び性能を確保するためにローカル制御ポリシーに従って設計する必要がある。
【００７３】
プラントに関して、安定性分析及び制御設計を促進するために以下の仮定が課される。
１．理想的なネットワークの存在下で制御目標を達成するためにＭＰＣ及びローカル状態フィードバック制御ポリシーｕｌ（ｋ）＝ｈ（ｘ（ｋ））が存在する。
２．プラントモデルが既知であり、プラント状態は測定されるか、又は、検知信号及びプラントモデルから高信頼度で再構築することができる。
【００７４】
プラント（１）についてのリモート制御ポリシー及びローカル制御ポリシーは、結果として得られる閉ループシステムが準大域的漸近安定（semi-globally asymptotically stable）であることを確実にするように共同で設計される。
ａ．制御ｕｌ（ｋ）＝ｈ（ｘ（ｋ））を有する閉ループシステム（１）についての平衡点をｘ＝０とする。以下を満たすような連続的微分可能関数
【数１８】
2022501717.tif 000020
が存在する。
【数１９】
2022501717.tif 000021
【００７５】
いくつかの制御設計は、
【数２０】
2022501717.tif 000022
をもたらし、ｂｌａｃｋｕｌ（ｋ）は、制御システムの不変集合である
【数２１】
2022501717.tif 000023
を与える。簡単にするために、本発明は、全ての
【数２２】
2022501717.tif 000024
についてｕｌ（ｋ）が
【数２３】
2022501717.tif 000025
内に常に存在し、
【数２４】
2022501717.tif 000026
を不変集合にすることを仮定する。
【００７６】
一般性を失うことなく、時間ステップｋにおけるプラント（１）について、リモートコントローラ２０１は、以下のコスト関数６７５を最小化することによってＭＰＣ制御ポリシーを実施する。
【数２５】
2022501717.tif 000027
ここで、Ｆ（ｘ（Ｎ｜ｋ））は、決定されるべき終端コスト６６５であり、ｌ（ｘ，ｕ）は、閉ループシステム過渡中のプラント状態及び制御労力をバランスするための所与のステージコスト６５６であり、
【数２６】
2022501717.tif 000028
であり、１≦ｉ≦Ｎ−１についてｘ（ｉ｜ｋ）は、ｕｒ（ｋ）に対応する状態であり、Ｎは、予測ホライズンである。ｌ（ｘ，ｕ）及びＦ（ｘ）の双方が正定値である。時間ステップｋにおいて、リモートＭＰＣコントローラは、状態軌跡に沿った状態／制御制約及び終端制約
【数２７】
2022501717.tif 000029
を条件として、コスト関数（２）を最小化することによって最適化問題を解く。
【００７７】
プラントを安定化させるためのローカル制御ポリシーの存在は、最適化問題が最適解を有することを暗示し、すなわち、時間ステップｋにおいて、
【数２８】
2022501717.tif 000030
であり、関連付けられたコスト関数は、Ｖｒ＊（ｘ（ｋ））＝Ｖ（ｘ（ｋ），ｕｒ＊（ｋ））及び共通リアプノフ関数によって与えられる。１つの実施形態では、本発明は、
１．連立偏微分方程式を解く反復手順によって終端コストを決定し、
２．スイッチデバイスがリモート制御パケットの受信ステータスに従ってその制御コマンドバッファ５０３及び／又は５０６を更新する場合、Ｖｒ＊（ｘ（ｋ））が共通リアプノフ関数であることを示す。
【００７８】
プラント（１）を大域的漸近安定にするローカル制御ポリシーｕｌ（ｋ）＝ｈ（ｘ（ｋ））を所与として、本発明は、
【数２９】
2022501717.tif 000031
について、以下の条件を満たす或る特定の正定値関数Ｊ（ｘ）を発見することができる限り、
【数３０】
2022501717.tif 000032
Ｆ（ｘ）＝Ｊ（ｘ）及びステージコストｌ（ｘ，ｕ）を有するコスト関数（２）は、閉ループシステムの共通リアプノフ関数であることを実現する。ここで、制御入力は、ＭＰＣポリシーとｕｌ（ｋ）＝ｈ（ｘ（ｋ））との間で切り替わる。
【００７９】
１つの実施態様では、終端コストＪ（ｘ）を構築するためにｕｌ＝ｈ（ｘ）を評価する（６６０）１ステップポリシー評価ベース手順を利用する。すなわち、
１．安定化ローカルコントローラｕｌ０＝ｈ０（ｘ）を設計する（６５０）。
２．ローカル制御ポリシーを評価する（６６０）。ここで、ｕｌ０＝ｈ０（ｘ）、ｌ（ｘ，ｕ）、０＜γ≦１を所与とすると、以下のポリシー評価がｊ＝０について実行される。
【数３１】
2022501717.tif 000033
３．ｕｌ０＝ｈ０（ｘ）に対応するコストＶ１（ｘ）を記録し、Ｊ（ｘ）＝Ｖ１（ｘ）とする。
４．コスト関数６７５を（２）と定義する。ただしＦ（ｘ）＝Ｊ（ｘ）＝Ｖ１（ｘ）である。
５．コスト関数を最小化することによってＭＰＣポリシーとしてリモートコントローラを実施する（６８０）。
【００８０】
ローカル制御則ｕｌ＝ｕｌ０を所与とすると、ポリシー評価ベース共同設計手順は、最終的に、（４）に従って終端コストＪ（ｘ）＝Ｖ１（ｘ）を出力する。ただし、Ｊ（ｘ（ｋ＋１）−Ｊ（ｘ）＝−ｌ（ｘ（ｋ），ｕｌ（ｋ））である。これは、条件（３）を満たすことを暗示する。したがって、閉ループ制御システムは、準大域的漸近安定である。
【００８１】
一次非線形差分方程式系として、（４）の閉形式解を達成するのは困難である。代わりに、適切な近似解が、通常、実用上の関心である。ｕｌ＝ｈ（ｘ）及びＪ（ｘ）のパラメータ化を所与とすると、（４）は、代数方程式に簡約され、それゆえ、Ｊ（ｘ）の近似解を容易に計算することができる。
【００８２】
ローカル制御ポリシーｕｌ＝ｈ（ｘ）は、Ｖｌを閉ループシステム軌跡に沿って減衰させるように設計される。これは、ｕｌ０が、コスト関数（２）の最小化に関して最適からかけ離れたものであり得ることを暗示する。結果として、リモートコントローラの性能を必然的に損なう終端コストＶ１は、良好ではない場合がある。
【００８３】
この問題に対する対応策は、図６Ｂに示すようにポリシー反復ベース共同設計手順を導入することであり、これは、また、以下のように詳述される。
１．安定化コントローラ  ｕｌ０＝ｈ０（ｘ）を設計し（６５０）、ｊ＝０とする。
２．ローカル制御ポリシー６６５を評価する（６６０）。ここで、ｕｌｊ＝ｈｊ（ｘ）及びｌ（ｘ，ｕ）を所与とすると、ポリシー実行ステップ（４）を実行して、ｊ＝０，１，．．．について制御ｕｌｊに対応するコストＶｊ＋１（ｘ）  ６６２を評価する。
３．ローカル制御ポリシーを改善する（６９０）。ここで、Ｖｊ＋１（ｘ）を所与とすると、以下のポリシー改善ステップを実行する。
【数３２】
2022501717.tif 000034
４．ｊ＝ｊ＋１とし、ｊ＝Ｍ又は｜Ｖｊ＋１−Ｖｊ｜≦ε＜＜１までポリシー評価及びポリシー改善ステップを繰り返す。
５．ｕｌＭ＝ｈＭ（ｘ）に対応するコストＶＭ（ｘ）を記録し、終端コスト６７５をＦ（ｘ）＝Ｊ（ｘ）＝ＶＭ（ｘ）とするか、又は、ｕｌｊ＋１＝ｈｊ＋１（ｘ）に対応するコストＶｊ＋１（ｘ）を記録し、終端コスト６７５をＦ（ｘ）＝Ｊ（ｘ）＝Ｖｊ＋１（ｘ）とする。
６．コスト関数６７５を（２）と定義する。ただしＦ（ｘ）である。
７．コスト関数（２）を最小化することによってＭＰＣポリシーとしてリモートコントローラを実施する（６８０）。
８．ローカルコントローラは、いずれのｊにおいてポリシー評価が停止するのかに応じてローカル制御ポリシーｕｌＭ＝ｈＭ（ｘ）又はｕｌｊ＋１＝ｈｊ＋１（ｘ）を実施する。
【００８４】
ポリシー反復ベース共同設計手順は、ローカル制御ポリシーを設計するためにオフラインで実施することができる。別の実施形態では、これは、ローカル制御ポリシーをオンラインで改善するためにリモートコントローラにおいて実施することができる。
【００８５】
本発明の上記の実施形態は数多くの方法のいずれかにおいて実現することができる。例えば、それらの実施形態は、ハードウェア、ソフトウェア又はその組み合わせを用いて実現することができる。ソフトウェアにおいて実現されるとき、そのソフトウェアコードは、単一のコンピュータ内に設けられるにしても、複数のコンピュータ間に分散されるにしても、任意の適切なプロセッサ、又はプロセッサの集合体において実行することができる。そのようなプロセッサは集積回路として実現することができ、集積回路コンポーネント内に１つ以上のプロセッサが含まれる。しかしながら、プロセッサは、任意の適切な構成の回路を用いて実現することができる。
【００８６】
また、本発明の実施形態は方法として具現することができ、その一例が提供されてきた。その方法の一部として実行される動作は、任意の適切な方法において順序化することができる。したがって、例示的な実施形態において順次の動作として示される場合であっても、例示されるのとは異なる順序において動作が実行される実施形態を構成することもでき、異なる順序は、いくつかの動作を同時に実行することを含むことができる。
【００８７】
請求項要素を変更するために特許請求の範囲において「第１の」、「第２の」のような序数の用語を使用することは、それだけで、或る請求項要素が別の請求項要素よりも優先度が高いこと、優位であること、若しくは上位にあることを、又は方法の動作が実行される時間的な順序を暗示するのではなく、請求項要素を区別するために、或る特定の名称を有する１つの請求項要素を（序数用語を使用しなければ）同じ名称を有する別の要素から区別するラベルとして単に使用される。
【図１Ａ】
2022501717.tif 000035
【図１Ｂ】
2022501717.tif 000036
【図１Ｃ】
2022501717.tif 000037
【図１Ｄ】
2022501717.tif 000038
【図２Ａ】
2022501717.tif 000039
【図２Ｂ】
2022501717.tif 000040
【図２Ｃ】
2022501717.tif 000041
【図３】
2022501717.tif 000042
【図４】
2022501717.tif 000043
【図５Ａ】
2022501717.tif 000044
【図５Ｂ】
2022501717.tif 000045
【図５Ｃ】
2022501717.tif 000046
【図５Ｄ】
2022501717.tif 000047
【図６Ａ】
2022501717.tif 000048
【図６Ｂ】
2022501717.tif 000049
【国際調査報告】
2022501717.tif 000050
2022501717.tif 000051