(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-09-25
(45)【発行日】2025-10-03
(54)【発明の名称】方法、制御システムおよびコンピュータ・プログラム
(51)【国際特許分類】
G05B 13/02 20060101AFI20250926BHJP
G06N 3/092 20230101ALI20250926BHJP
【FI】
G05B13/02 J
G05B13/02 L
G06N3/092
(21)【出願番号】P 2022565663
(86)(22)【出願日】2021-04-21
(86)【国際出願番号】 IB2021053270
(87)【国際公開番号】W WO2021229325
(87)【国際公開日】2021-11-18
【審査請求日】2023-09-25
(32)【優先日】2020-05-11
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】ザドロジニイ、アレキサンダー
【審査官】影山 直洋
(56)【参考文献】
【文献】特開2020-027386(JP,A)
【文献】特開2009-294731(JP,A)
【文献】特開平05-012019(JP,A)
【文献】特開2008-196719(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 13/02
G06N 3/092
(57)【特許請求の範囲】
【請求項1】
1つ又はそれ以上の制約値が課される被制御アプリケーション・システムの数学的表現の次元を自動的に削減するためのコンピュータが実行する方法であって、前記方法が、
前記被制御アプリケーション・システムの動作を指令する制御システムにおいて、前記被制御アプリケーション・システムに関連する制御活動変数及びシステム状態変数に対応するデータを受信すること、
前記制御システムのプロセッサを介して、前記制御活動変数及び前記システム状態変数に対応するデータに基づいて、制約付き強化学習(CRL)モデルを前記被制御アプリケーション・システムにフィッティングすること、
前記プロセッサを介して、関心のある制御活動変数を選択することにより、及び、関心のある制御活動変数各々について、フィッティングされた前記CRLモデルについて得られたポリシーに基づいて、前記関心のある制御活動変数各々を推奨するように前記CRLモデルを駆動するシステム状態変数を識別することにより、前記システム状態変数のサブセットを自動的に識別すること、
前記プロセッサを介して、前記システム状態変数の前記サブセットを使用して前記CRLモデルの状態空間の次元削減を自動的に実行すること、
前記プロセッサを介して、状態空間の次元削減の後に、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの制約付きマルコフ決定プロセス(CMDP)
モデルのための遷移確率マトリックスを推定すること、及び
前記プロセッサを介して、前記遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連コストを使用して、前記CMDPモデルを線形計画(LP)問題として定式化すること
を含む方法。
【請求項2】
前記CRLモデルは、制約付き深層強化学習(CDRL)モデルを含む、請求項1に記載の方法。
【請求項3】
前記プロセッサを介して前記LP問題を解き、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの動作を最適化するであろう1つ又はそれ以上の活動を決定すること、及び
前記制御システムを介して前記1つ又はそれ以上の制御活動を実行すること
を含む、請求項1に記載の方法。
【請求項4】
少なくとも、
前記被制御アプリケーション・システムに結合されたセンサからデータの少なくとも一部を受信すること、及び
前記プロセッサを介して、前記被制御アプリケーション・システムのシミュレーションに基づいて、前記データの少なくとも一部分を計算すること
を含む、請求項1に記載の方法。
【請求項5】
前記CRL
モデルを前記被制御アプリケーション・システムにフィッティングすることは、リワード被制約ポリシー最適化(RCPO)プロセスを実行すること
を含む、請求項1に記載の方法。
【請求項6】
前記CRLモデルを前記被制御アプリケーション・システムにフィッティングすることは、
勾配上昇法を使用して前記被制御アプリケーション・システムの数学的表現にフィットするラグランジュ乗数を学習すること、及び
前記学習されたラグランジュ乗数を使用してCRLモデルとしての前記数学的表現を定式化すること
を含む、請求項1に記載の方法。
【請求項7】
前記システム状態変数の前記サブセットを自動的に識別することは、
前記制御活動変数及び前記システム状態変数のペアに関連する占有尺度を計算すること、
関心のある制御活動変数各々を含み、かつ事前定義された閾値に従う占有尺度を有する前記制御活動変数及び前記システム状態変数の特定のペアを自動的に決定すること、及び
前記制御活動変数及び前記システム状態変数の前記特定のペアを分析して、関心のある制御活動変数各々を推奨するように前記CRLモデルを駆動することに最も実質的な影響を有する前記システム状態変数の前記サブセットを決定すること
を含む、請求項1に記載の方法。
【請求項8】
前記CMDPモデルのための前記遷移確率マトリックスを推定することは、
関心のある前記制御活動変数、及び前記システム状態変数に関連する状態空間及び活動空間を分析すること、
特定の制御活動変数のためのシステム状態変数におけるそれぞれの変化についての遷移数を、制御活動変数及び関心のある前記制御活動変数内のシステム状態変数及び前記システム状態変数のサブセットの全数で除算することにより推定すること、及び
前記遷移確率マトリックスを生成するための補間を、
活動依存のシステム状態変数又は活動非依存のシステム状態変数の少なくとも1つについての近傍システム状態を使用するか、又は
既約性保証方法を実行するか、又はそれらの両方によって実行すること
を含む、請求項1に記載の方法。
【請求項9】
前記プロセッサを介して、前記被制御アプリケーション・システムの動作に関連する複数の異なる予測的シナリオを分析するために前記LP問題を解くこと
を含む、請求項1に記載の方法。
【請求項10】
1つ又はそれ以上の制約値が課される被制御アプリケーション・システムの動作を指令する制御システムであって、
前記被制御アプリケーション・システムに関連する制御活動変数及びシステム状態変数に対応するデータを受信するためのインタフェースと、
プロセッサとを含み、前記プロセッサが、
前記制御活動変数及び前記システム状態変数に対応するデータに基づいて制約付き強化学習(CRL)モデルを前記被制御アプリケーション・システムにフィッティングすること、
前記プロセッサを介して、関心のある制御活動変数を選択することにより、及び、関心のある制御活動変数各々について、フィッティングされた前記CRLモデルについて得られたポリシーに基づいて、前記関心のある制御活動変数各々を推奨するように前記CRLモデルを駆動するシステム状態変数を識別することにより、前記システム状態変数のサブセットを自動的に識別すること、
前記システム状態変数の前記サブセットを使用して前記CRLモデルの状態空間の次元削減を自動的に実行すること、
状態空間の次元削減の後に、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの制約付きマルコフ決定プロセス(CMDP)
モデルのための遷移確率マトリックスを推定すること、及び
前記遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連コストを使用して前記CMDPモデルを線形計画(LP)問題として定式化すること
を実行すること含む、制御システム。
【請求項11】
前記LP問題を解き、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの動作を最適化するであろう1つ又はそれ以上の活動を決定すること、及び
前記制御システムを介して前記1つ又はそれ以上の制御活動を実行すること
を含む、請求項10に記載の制御システム。
【請求項12】
前記CRLモデルは、制約付き深層強化学習(CDRL)モデルを含む、請求項10に記載の制御システム。
【請求項13】
前記被制御アプリケーション・システムは、排水処理プラント(WWTP)を含み、かつ前記1つ又はそれ以上の制約値は、前記WWTPにより生成される流出液の全窒素濃度についての制限、又は燐濃度についての制限の少なくとも1つを含む、請求項10に記載の制御システム。
【請求項14】
リワード被制約ポリシー最適化(RCPO)プロセスを実行することにより、前記CRL
モデルを前記被制御アプリケーション・システムにフィッティングすることを指令するプログラム命令を格納する、請求項10に記載の制御システム。
【請求項15】
前記CRLモデルを前記被制御アプリケーション・システムにフィッティングすることが、
勾配上昇法を使用して前記被制御アプリケーション・システムの数学的表現にフィットするラグランジュ乗数を学習すること、及び
前記学習されたラグランジュ乗数を使用してCRLモデルとしての前記数学的表現を定式化すること
を含む、請求項10に記載の制御システム。
【請求項16】
前記システム状態変数を識別することは、
前記制御活動変数及び前記システム状態変数のペアに関連する占有尺度を計算すること、
関心のある制御活動変数各々を含み、かつ事前定義された閾値に従う占有尺度を有する前記制御活動変数及び前記システム状態変数の特定のペアを自動的に決定すること、及び
前記制御活動変数及び前記システム状態変数の前記特定のペアを分析して、関心のある制御活動変数各々を推奨するように前記CRLモデルを駆動することに最も実質的な影響を有する前記システム状態変数の前記サブセットを決定すること
を含む、請求項10に記載の制御システム。
【請求項17】
前記CMDP
モデルのための前記遷移確率マトリックスを推定することは、
関心のある前記制御活動変数及び前記システム状態変数に関連する状態空間及び活動空間を分析すること、
特定の制御活動変数のためのシステム状態変数におけるそれぞれの変化についての遷移数を、制御活動変数及び関心のある前記制御活動変数内のシステム状態変数及び前記システム状態変数のサブセットの全数で除算することにより推定すること、及び
前記遷移確率マトリックスを生成するための補間を、
活動依存のシステム状態変数又は活動非依存のシステム状態変数の少なくとも1つについての近傍システム状態を使用するか、又は
既約性保証方法を実行するか、又はそれらの両方によって実行すること
を含む、請求項10に記載の制御システム。
【請求項18】
前記LP問題を解くことにより、前記被制御アプリケーション・システムの動作に関連する複数の異なる予測的シナリオを分析することを指令することを含む、請求項10に記載の制御システム。
【請求項19】
前記被制御アプリケーション・システムのシミュレーションに基づいて、前記データの少なくとも一部を計算することを含む、請求項10に記載の制御システム。
【請求項20】
1つ又はそれ以上の制約値が課せられる被制御アプリケーション・システムの数学的表現の次元を自動的に削減するためのコンピュータ・プログラムであって、プロセッサに対して、
制御活動変数及びシステム状態変数に対応するデータに基づいて制約付き強化学習(CRL)モデルを前記被制御アプリケーション・システムにフィッティングすること、
関心のある制御活動変数を選択することにより、及び、関心のある制御活動変数各々について、フィッティングされた前記CRLモデルについて得られたポリシーに基づいて、前記関心のある制御活動変数各々を推奨するように前記CRLモデルを駆動するシステム状態変数を識別することにより、前記システム状態変数のサブセットを自動的に識別すること、
前記システム状態変数の前記サブセットを使用して前記CRLモデルの状態空間の次元削減を自動的に実行すること、
状態空間の次元削減の後に、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの制約付きマルコフ決定プロセス(CMDP)
モデルのための遷移確率マトリックスを推定すること、及び
前記遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連コストを使用して前記CMDPモデルを線形計画(LP)問題として定式化すること
を実行させる、コンピュータ・プログラム。
【発明の詳細な説明】
【背景技術】
【0001】
本開示は、機械学習の分野に関する。より特定的には、本開示は、被制御アプリケーション・システムの数学的表現を自動的に次元削減することにより、被制御アプリケーション・システムの動作を指示する制御システムの制御活動を最適化することに関する。
【発明の概要】
【0002】
本明細書に記載される実施形態にしたがい、1つ又はそれ以上の制約値が課せられる被制御アプリケーション・システムの数学的表現の次元を自動的に削減するための方法が提供される。本方法は、前記被制御アプリケーション・システムの動作を指令する制御システムにおいて、前記被制御アプリケーション・システムに関連する制御活動変数及びシステム状態変数に対応するデータを受信すること、及び前記制御システムのプロセッサを介して、前記制御活動変数及び前記システム状態変数に対応するデータに基づいて、制約付き強化学習(CRL)モデルを前記被制御アプリケーション・システムにフィッティングすることを含む。本方法はまた、前記プロセッサを介して、関心のある制御活動変数を選択することにより前記システム状態変数のサブセットを自動的に識別すること、及び関心のあるそれぞれの制御活動変数について関心のある制御活動変数を推奨するためにCRLモデルを駆動するシステム状態変数を識別することを含む。本方法はさらに、前記プロセッサを介して、前記システム状態変数の前記サブセットを使用して前記CRLモデルの状態空間の次元削減を自動的に実行すること、前記プロセッサを介して、状態空間の次元削減の後に、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの制約付きマルコフ決定プロセス(CMDP)のための遷移確率マトリックスを推定すること、及び前記プロセッサを介して、前記遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連コストを使用して、前記CMDPモデルを線形計画(LP)問題として定式化することを含む。
【0003】
別の実施形態においては、1つ又はそれ以上の制約値が課せられる被制御アプリケーション・システムの数学的表現の次元を自動的に削減するための制御システムが提供される。制御システムは、前記被制御アプリケーション・システムに関連する制御活動変数及びシステム状態変数に対応するデータを受信するためのインタフェースを含む。制御システムはまた、プロセッサ及びコンピュータ可読は記録媒体を含む。コンピュータ可読な記録媒体は、前記プロセッサに対して前記制御活動変数及び前記システム状態変数に対応するデータに基づいて制約付き強化学習(CRL)モデルを前記被制御アプリケーション・システムにフィットすること、前記プロセッサを介して、関心のある制御活動変数を選択することにより前記システム状態変数のサブセットを自動的に識別すること、及び関心のあるそれぞれの制御活動変数について関心のある制御活動変数を推奨するためにCRLモデルを駆動するシステム状態変数を識別することを指令するプログラム命令を含む。コンピュータ可読な記録媒体はまた、前記プロセッサに対して、前記システム状態変数の前記サブセットを使用して前記CRLモデルの状態空間の次元削減を自動的に実行すること、状態空間の次元削減の後に、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの制約付きマルコフ決定プロセス(CMDP)のための遷移確率マトリックスを推定すること、及び前記遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連コストを使用して前記CMDPモデルを線形計画(LP)問題として定式化することを指令する、プログラム命令を格納する。
【0004】
さらに別の実施形態においては、1つ又はそれ以上の制約値が課される被制御アプリケーション・システムの数学的表現の次元を自動的に削減するためのコンピュータ・プログラム製品が提供される。コンピュータ・プログラム製品は、それに実体化されたプログラム命令を有するコンピュータ可読な記録媒体を含み、前記コンピュータ可読な記録媒体がそれ自体過渡的信号ではない。プログラム命令は、前記プロセッサにより実行されて、前記プロセッサに対して前記制御活動変数及び前記システム状態変数に対応するデータに基づいて制約付き強化学習(CRL)モデルを前記被制御アプリケーション・システムにフィットさせ、前記CRLモデルは、前記制御活動変数及び前記システム状態変数に対応するデータに基づき、かつ関心のある制御活動変数を選択することにより前記システム状態変数のサブセットを自動的に識別させ、かつ関心のある制御活動変数について関心のある制御活動変数を推奨するためにCRLモデルを動作するシステム状態変数を識別させる。前記プログラム命令はまた、前記プロセッサにより実行されて、前記プロセッサに対して、前記システム状態変数の前記サブセットを使用して前記CRLモデルの状態空間の次元削減を自動的に実行させ、状態空間の次元削減の後に、前記1つ又はそれ以上の制約値が課される前記被制御アプリケーション・システムの制約付きマルコフ決定プロセス(CMDP)のための遷移確率マトリックスを推定させ、かつ前記遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連コストを使用して前記CMDPモデルを線形計画(LP)問題として定式化させる。
【図面の簡単な説明】
【0005】
【
図1】
図1は、本明細書において説明される自動的な状態空間の次元削減技術が実装されることができる、実施例の配水処置プラント(WWTP)の簡略化されたブロック図であり、
【0006】
【
図2】
図2は、1つ又はそれ以上の制約値が課せられる被制御アプリケーション・システムの数学的表現の次元を自動的に削減するための方法のプロセス・フロー図である。
【発明を実施するための形態】
【0007】
機械学習技術は、例えば、排水処理、農業システム、水資源管理システム、問合わせシステム、伝染症初期プロセス・システム、ロボット・モーション計画システムなどといった、被制御アプリケーション・システムの種々の異なるタイプに関連する制御システムの動作最適化のために、普通に使用される。より特定的には、機械学習技術は、そのような被制御アプリケーション・システムの動作を数学的に記述するモデルを生成するために使用される。例えば、強化学習(RL)技術は、その環境に関する被制御アプリケーション・システムの状態を、その環境に関連して、その被制御アプリケーション・システムに関連する制御システムのオペレータにより、積算的なリワードの意義を最大化するようなシーケンスにおいて執られる制御活動にマップするポリシーを学習するために使用されることができる。強化学習の拡張は、深層強化学習(deep reinforcement learning:DRL)と呼ばれ、クライアントの/問題の環境的挙動をモデル化するために、ディープ・ニューラル・ネットワークを利用する。さらに、被制御アプリケーション・システムの動作に制約が課される場合、制約付き強化学習又は制約付き深層強化学習技術(CDRL)又はそれらの両方がそのような制約を考慮するポリシーを学習するために使用されることができる。追加的に、マルコフ決定プロセス(MDP)は、決定が特定の制御活動に応答して異なるシステム状態間の、明示的に計算/推定された遷移確率を使用するための複雑なフレームワークを含む。制約付きマルコフ決定プロセス(CMDP)技術が使用される場合、モデルは被制御アプリケーション・システムに関連する特定の制約に適合するように制御される。
【0008】
動作においては、そのような被制御アプリケーション・システムは、しばしば、それぞれの制御システムによって執られることができる、極めて膨大な数の利用可能な制御活動に加えて、極めて膨大な数の可能なシステム状態を含む。例えば、いくつかの被制御アプリケーション・システムは、100の可能な制御活動に加えて、数百の可能なシステム状態変数を含む。この結果、そのような被制御アプリケーション・システムのための制約された数学的モデルを実装することは、数百万の上の方の遷移確率値を計算すること、又は極めて膨大なニューラル・ネットワークを学習させることを含む可能性がある。しかしながら、これらのアプリケーションに対する制御システムは、しばしば、合理的な時間内にそのような膨大な数の遷移確率を計算するための充分な処理能力を有さず、かつ多くの被制御アプリケーション・システムは、このレベルにおいて計算を実行するための充分なデータを収集するための充分なセンサを含まない。さらに、1つ又はそれ以上の制約が被制御アプリケーション・システムに課される場合、制約された数学的モデルは、さらに複雑にさえなり、かつ計算が困難となる。したがって、そのような制約された数学的モデルのサイズを削減することがしばしば望ましい。
【0009】
したがって、本開示は、数千の変数から、例えば10よりも少ないか又は20よりも少ない変数へと、可能なシステム状態の数を削減することにより、そのような制約された数学的モデルの状態空間の次元を自動的に削減するための技術を記載する。これは、CMDP及びCRL(又はCDRL)技術の組み合わせを使用して達成される。得られる簡略化されたモデルは、被制御アプリケーション・システムに対して課される1つ又はそれ以上の制約を依然として維持しながら、制御システムが迅速かつ効果的に、被制御アプリケーション・システムの動作を最適化することを許容する。
【0010】
本明細書において記載される本技術は、排水処理プラント、健康管理システム、農業システム、水資源管理システム、問合わせシステム、伝染症初期プロセス・システム、ロボット・モーション計画システムなどといった、いかなる好適なタイプの被制御アプリケーション・システムに対して適用することができる。しかしながら、議論の簡略化のため、本明細書において記述される実施形態は、排水処理プラントに対するそのような技術の適用に関する。
【0011】
図1は、本明細書において記載される自動的な状態空間の次元削減技術が実装されることができる実施例の、排水処理プラント(WWTP)100の簡略化されたブロック図である。WWTP100は、流入液102として参照される、入来する排水を処理するように構成されるいかなる好適なタイプの排水処理ユニット、デバイス、又はシステムとすることができる。流入液102は、ローカルな規制又はプロトコルにしたがって、設定される水準まで流入液102を処理するための、いかなる数のスクリーン、ポンプ、反応器、沈殿タンク、分離デバイス、エア・ブロワなどを含むことができるWWTP100内の液体ライン104を通して移動する。液体ライン104の2つの主な排出物は、流出液106として参照される被処理流体及びスラッジ108として参照される被処理バイオ固体である。スラッジ108は、その後、スラッジ・ライン110を通して流れ、これはスラッジ108を処理するための、いかなる数のスクリーン、ポンプ、反応器、沈殿タンク、分離デバイス、脱水システム、エアレーション・タンク、エア・ブロワなどを含むことができる。得られる被処理スラッジ112は、フィルタ・ケーキを含む可能性があり、例えば、その後に処理114のために外部に送付されるが、反応器内での使用のための活性スラッジを含む可能性があり、再利用される流出液106は、液体ライン104へと戻してリサイクルされる。追加的に、スラッジ・ライン110内のスラッジ108から分離されたメタンガス118は、ガス・ライン120へと送付されることができ、そこで、それが販売されるか又は種々の目的のために使用されることができる。
【0012】
WWTP100はまた、液体ライン104又はスラッジ・ライン110又はそれらの両方に含まれる、スクリーン(複数)、ポンプ(複数)、反応器(複数)、沈殿タンク(複数)、分離デバイス(複数)、エア・ブロワ(複数)、脱水システム(複数)、エアレーション・タンク(複数)などといった、WWTP100内の種々のデバイス及びシステムの機能を制御するように構成される、制御システム122を含む。種々の実施形態においては、WWTP100の制御システム122は、例えば、1つ又はそれ以上のサーバ、1つ又はそれ以上の汎用目的のコンピューティング・デバイス、1つ又はそれ以上の特定目的のコンピューティング・デバイス、又は1つ又はそれ以上の仮想マシン又はそれらの組み合わせからなる。さらに、制御システム122は、液体ライン104に接続された1つ又はそれ以上のセンサ(複数)128A及びスラッジ・ライン110に接続された1つ又はそれ以上のセンサ(複数)128Bといった、WWTP100内の多数のセンサからの読取り値を受信するためのインタフェース126に加えて、1つ又はそれ以上のプロセッサ124を含む。センサ(複数)128A及び128Bは、WWTP100に関連する種々の状態をモニタするために使用されることができる。例えば、センサ(複数)128A及び128Bは、流出液の全窒素のフロー変数及び流出液の全燐のフロー変数といったフロー変数をモニタするために使用されることができる。読取り値は、センサ(複数)から直接受信されることができるか、又はプロキシ又は入力デバイスを介して受信されることができる。
【0013】
インタフェース126はまた、例えば、インターネット、ローカルエリア・ネットワーク(LAN)、ワイドエリア・ネットワーク(WAN)、又はワイヤレス・ネットワーク又はそれらの組み合わせといったネットワーク132を介して、WWTP100に関連する1つ又はそれ以上のデータベース130からデータを取得するために使用されることができる。ネットワーク132は、関連する銅通信ケーブル、光学通信ファイバ、ワイヤレス通信デバイス、ルータ、ファイヤウォール、スイッチ、ゲートウェイ・コンピュータ、エッジ・サーバなどを含むことができる。データベース130から取得されたデータは、例えば、WWTP100についての、又は他の同様のWWTPsの履歴的動作データに加えて、WWTP100の動作要件に関連する情報を含むことができる。
【0014】
制御システム122はまた、本明細書においてさらに説明されるように、WWTP100の動作を制御するためにプロセッサ(複数)124により実行されることができるプログラム命令を含む、コンピュータ可読な記録媒体(又は複数の媒体)134を含む。コンピュータ可読な記録媒体134は、制御システム122に一体化されていてもよく、又使用時に制御システム122に接続される外部デバイスとすることができる。コンピュータ可読な記録媒体134は、例えば、電子的記録デバイス、磁気記録デバイス、光学的記録デバイス、電気磁気記録デバイス、半導体記録デバイス、又は上述のもののいかなる好適な組み合わせを含むことができる。コンピュータ可読な記録媒体134の、より特定的で非消尽的なリストは以下を含む:ポータブル・コンピュータ・ディスク、ハードディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能なプログラマブル・リード・オンリー・メモリ(EPROM又はフラッシュ・メモリ(登録商標))、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・イオンリー・メモリ(CD-ROM)、デジタル多目的ディスク(DVD)、メモリ・スティック、フロッピー・ディスク(登録商標)、パンチ・カード又は命令を記録した溝内に突出する構造を有する機械的にエンコードされたデバイス、及びこれらの好ましい如何なる組合せを含む。さらに、本明細書で使用されるように用語“コンピュータ可読な記録媒体”は、ラジオ波又は他の自由に伝搬する電磁波、導波路又は他の通信媒体(例えば、光ファイバ・ケーブルを通過する光パルス)といった電磁波、又はワイヤを通して通信される電気信号といったそれ自体が一時的な信号として解釈されることはない。いくつかの実施形態においては、インタフェース126は、ネットワーク132からプログラム命令を受信すると共に、制御システム122内のコンピュータ可読な記録媒体134内に格納するためにプログラム命令を転送するネットワーク・アダプタ・カード又はネットワーク・インタフェースを含む。
【0015】
プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械語命令、マシン依存命令、マイクロ・コード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又は1つ又はそれ以上の、Smalltalk(登録商標)、C++などのオブジェクト指向プログラミング言語、“C”プログラミング言語又は類似のプログラム言語といった従来の手続き型プログラミング言語を含むプログラミング言語のいかなる組合せにおいて記述されたソース・コード又はオブジェクト・コードのいずれかとすることができる。プログラム命令は、全体が制御システム122上で、部分的に制御システム122上でスタンドアローン・ソフトウェア・パッケージとして、部分的に制御システム122上で、かつ部分的に制御システム122にネットワーク132を介して接続されたリモート・コンピュータ上で、又は全体がリモート・コンピュータ又はサーバ上で実行することができる。いくつかの実施形態では、例えばプログラマブル論理回路、フィールド・プログラマブル・ゲートアレイ(FPGA)、又はプログラマブル論理アレイ(PLA)を含む電気回路がコンピュータ可読なプログラム命令を、コンピュータ可読なプログラム命令の状態情報を使用して、本発明の特徴を実行するために電気回路をパーソナライズして実行することができる。
【0016】
動作においては、WWTP100を出る流出液106及び被処理スラッジ112の特性は、WWTP100のロケーションに特有な規制上の制約に従わなければならない。そのような制約は、例えば、特定の時間的期間にわたる流出液106の全窒素濃度及び全燐濃度についての制限を含むことができる。そのような制約の実施例は、流出液106内の月(又は日)平均の全窒素濃度について、15ミリグラム・パー・リッター(mg/L)の上限である。流出液106及び被処理スラッジ112を処理することはその程度において、液体ライン104及びスラッジ・ライン110内で多数のステップが実行される。例えば、液体ライン104は、いかなる数の反復的なサブプロセスを介して流入液102を処理するための装置に加えて、生物物理又は化学又はそれらの両方のサブプロセスを介して流入液102を処理するための種々の異なるタイプの装置を含むことができ、同一の入流液の部分は、いくつかのサブプロセスを、何度も通る。
【0017】
そのような制約に従うために、制御システム122は、WWTP100に関連する制御活動変数及びシステム状態変数を制御するために使用することができる。本明細書において使用されるように、用語“制御活動”は、被制御アプリケーション・システムの動作を制御するための制御システムにより執られる可能な活動を参照するが、用語“システム状態”は、制御システムが1つ又はそれ以上の制御活動を執った後の被制御アプリケーション・システムの可能な状態を参照する。システム状態変数の実施例は、以下のものを含む:(1)低、中、高の流入フロー・レート(立方メートル・パー・アワー(m3/hr)で動作すること;(2)オン又はオフ設定に設定された1つ又はそれ以上のフィードバック又はリサイクル・ループと共に動作すること;(3)低、中、高に設定された流出液106の全窒素濃度(mg/Lでの)、又は全燐濃度(mg/Lでの)、又はそれらの両方の上限で動作すること;(4)高価、中、又は安価設定に設定された電気的コストに関連する時間的期間で動作すること;及び(5)低、中、高に設定された全動作コストで動作すること。制御活動変数の実施例は、以下のものを含む:(1)WWTP100内の1つ又はそれ以上のエア・ブロワの速度を増加又は減少すること;(2)WWTP100内の液体ライン104又はスラッジ・ライン110又はそれらの両方に添加される添加剤の量を増加又は減少すること;(3)WWTP100内の1つ又はそれ以上のポンプについてのポンピング・レート(m3/hrでの)を増加又は減少すること;及び(4)液体ライン104へと戻すリサイクル流出液116を送付するために使用されるWWTP100内のフィードバック装置といったフィードバック装置を制御すること。
【0018】
この複雑性の結果として、WWTPsは、典型的には高い動作コストを有する。全運転コストは、例えば、WWTP100内のコンポーネントを動作するために必要とされる電気コスト、排水処理プロセスに使用される種々の添加剤のコスト、及び得られた被処理スラッジ112のための廃棄コストを含む可能性がある。今日においては、ほとんどのWWTPsは、リスクを定量化するか、又は真にコストを最適化する能力なく、保守的で、かつ非効率なリスク不利なモードで動作されている。いくつかのサブプロセスは、局所的に最適化されるが、しかしながら、あるサブプロセスの局所的な最適化は、考慮されていない1つ又はそれ以上の他のサブプロセスに対して負の影響を有する可能性がある。そのような局所的な最適化は、プロセス全体として逆効果を有する可能性さえ有する。
【0019】
この結果、制御システム122のコンピュータ可読な記録媒体134は、動作最適化モジュール136を含む。この動作最適化モジュール136は、1つ又はそれ以上の課せられた制約を維持しながら動作効率を最大化させ、かつWWTP100の動作コストを最小化するための制御活動を選択するために使用されることができる、WWTP100の数学的表現を生成するように構成される。
【0020】
動作において、WWTP100に関連するCMDPモデルは、排水処理プロセスに関連する膨大な数の変数のため、高度の複雑性を含む。例えば、WWTP100は、制御システム122により執られることができる100を超える可能な制御活動に加えて、数百の可能なシステム状態変数を含む可能性がある。この結果、WWTP100に対してCMDPモデルを実装することは、2^200×100を超える遷移確率値の計算又は推定を含む可能性がある。しかしながら、制御システム100は、合理的な時間内でそのような膨大な数の遷移確率を計算するための充分な処理能力を有しない可能性がある。さらに、WWTP100は、制限された数のセンサ128A及び128Bを含むだけである。例えば全体のWWTP100は、5~10センサを含むだけの可能性がある。この結果、制御システム122は、このレベルでの計算を実行するための充分なデータを収集することができない可能性がある。さらに、制約がWWTP100に対して課せられるので、CMDPモデルは、より複雑にさえなり、かつ計算が困難になる。
【0021】
この結果、本明細書で説明される実施形態によれば、制御システム122のコンピュータ可読な記録媒体134内の動作最適化モジュール136は、自動状態空間次元削減モジュール138として参照されるサブモジュールを含む。自動状態空間次元削減モジュール138は、プロセッサ(複数)124に対して、CRLモデル内で使用される可能なシステム状態の数を、数千の変数から10よりも少ないか又は20よりも少ない変数へと削減することにより、WWTP100に関連するCRLモデルの状態空間次元を自動的に削減させる命令を含む。これは、次に被制御アプリケーション・システムのCMDPモデルのための遷移確率マトリックスを簡略化し、CMDPモデルが線形計画(LP)問題として定式化されることを許容する。制御システム122は、その後、課せられた制約を適切に維持しながらWWTP100の動作を迅速かつ効率的に制御するためにLP問題を使用することができる。
【0022】
図1のブロック図は、WWTP100(又はWWTP100内の制御システム122)が
図1に示されるコンポーネントの全部を含むべきことを示す意図はない。そうではなく、WWTP100(又は制御システム122、又はそれらの両方)は、
図1に示されていない、いかなる数の追加的な、又は代替的なコンポーネントを含むことができる。例えば、制御システム122のコンピュータ可読な記録媒体134は、WWTP100の動作を制御し、又は最適化し又はこれらの両方のための、いかなる数の追加的モジュールを含むことができる。追加的に、制御システム122は、WWTP100の動作に関連するシミュレーションされたデータを提供する、シミュレーション・システムを含むか、又は接続されるか、又はそれらの両方とすることができる。いくつかの実施形態においては、制御システム122は、WWTP100の動作を最適化するために、シミュレートされたデータ及びセンサ128A及び128Bから取得されたデータの組み合わせを使用することができる。
【0023】
ここで、本明細書において説明される実施形態により使用されることができる、CMDP技術の数学的説明を行う。CMDPは、5-タプル
【0024】
【0025】
で定義され、ここに、Sは、システム状態の有限のセットであり、
【0026】
【0027】
であり、Uは、制御活動の有限のセットであり、
【0028】
【0029】
であり、Pは、遷移確率関数
【0030】
【0031】
であり、cは、コスト関数
【0032】
【0033】
であり、これは、状態-活動ペアについてのコストのベクトルを含み、かつ
【0034】
【0035】
は、制約に関連するコストのベクトルを意味する。システム状態の有限のセットSは、
【0036】
【0037】
として表され、ここで、Sからの要素は、ベクトルであり、かつ制御活動の有限のセットUは、
【0038】
【0039】
として表され、ここで、Uは、ベクトルである。
遷移確率関数Pは、
【0040】
【0041】
により表される。さらにstは、時間tでの状態を表すランダム変数であり、utは、時間tでの活動を表すランダム変数である。
【0042】
遷移確率関数、
【0043】
【0044】
は、1つのシステム状態
【0045】
【0046】
から別のシステム状態
【0047】
【0048】
への、活動uが選択された場合の遷移確率を定量化する。システム状態xの場合に活動uを選択することに関連するコストは、
【0049】
【0050】
に等しい。異なる確率及び結果に基づいて、ポリシー、πが生成され、ここでそれぞれのポリシーは、状態-活動ペアを覆う確率尺度を含む。CMDPモデルのゴールは、全体のコスト、
【0051】
【0052】
を、制約の合計値
【0053】
【0054】
が特定的な値を下回るように保証しながら最小化するポリシーπを見い出すことである。
【0055】
CMDPがディスカウントしたコスト・モデルについて、パラメータ
【0056】
【0057】
は、将来のコストが削減されるレートを特定し、
【0058】
ここで、
【0059】
【0060】
は、イベント
【0061】
【0062】
の、初期状態が
【0063】
【0064】
に等しく、ポリシーが
【0065】
【0066】
に等しい場合の確率を表す。このモデルによりディスカウントされた占有尺度は、以下の式(1)で示されるように規定される。ここで、
【0067】
【0068】
【0069】
である。時間tでのポリシーπでのコストの期待値は、式(2)に示されるように定義される。
【0070】
【0071】
コストは、ここで、(0<β<1(ディスカウント・ファクタ)とすると、式(3)に示すように定義される。
【0072】
【0073】
制約、
【0074】
【0075】
は、同様に、式(4)に示されるように定義される。
【0076】
【0077】
上述したように、CMDP技術のゴールは、全コスト
【0078】
【0079】
を最小化するポリシーπを、制約の合計値
【0080】
【0081】
が特定的な値を下回ることを保証しながら見い出すことである。得られるポリシーπは、被制御アプリケーション・システムの動作最適化のために使用されることができる。しかしながら、
図1に示された実施例に関連して説明されるように、多くの被制御アプリケーション・システムは、過剰すぎるほど膨大な数の可能なシステム状態、及び可能な制御活動を含む。この膨大な数の変数は、合理的な時間内で解くことができない高度に複雑なモデルの生成をもたらす。したがって、本明細書において説明される実施形態は、それぞれのCMDPモデルのために最重要なシステム状態変数のサブセットを自動的に選択することにより、CMDPモデルのサイズを迅速かつ効率的に削減するために使用することができる自動的な状態空間の次元削減技術を提供する。種々の実施形態においては、これは、
図2についてより詳細に説明されるように、CRL(又はCDRL)及びCMDP技術を組み合わせることによって達成される。さらに、状態空間の次元削減の後、CMDPモデルは、IBM CPLEX(登録商標)オプティマイザといった典型的なソルバーにより、迅速、かつ効率的に解くことができる線形計画(LP)問題として定式化することができる。
【0082】
図2は、1つ又はそれ以上の制約値が課される被制御アプリケーション・システムの数学的表現の次元を自動的に削減するための方法200のプロセス・フロー図を示す。本方法200は、被制御アプリケーション・システムの動作を指令する制御システムにより実装される。いくつかの実施形態においては、被制御アプリケーション・システムは、
図1に関連して説明されたWWTP100といったWWTPであり、制御システムは、プロセッサ及びプロセッサを指示して方法200のステップを実行させるプログラム命令を含むコンピュータ可読な記録媒体を含む。さらに、他の実施形態においては、被制御アプリケーション・システムは、健康管理システム、農業システム、水資源管理システム、問合わせシステム、伝染症初期プロセス・システム、ロボット・モーション計画システム、又はいかなる他の好適なタイプの被制御アプリケーション・システムとすることができる。
【0083】
本方法200は、ブロック202で開始し、そこにおいて、制御システムは、被制御プリケーション・システムに関連する制御活動変数及びシステム状態変数に対応するデータを受信する。いくつかの実施形態において、データの少なくとも一部分は、被制御アプリケーション・システムに結合されたセンサを介して計算される。さらに、いくつかの実施形態においては、制御システムは、被制御アプリケーション・システムのシミュレーションに基づいてデータの少なくとも一部分を計算する。
【0084】
本明細書において説明されるように、制御活動変数は、制御システムが被制御アプリケーション・システムの動作の制御を実行することを可能とする膨大な数の可能な活動を含み、かつシステム状態変数は、制御システムが1つ又はそれ以上の活動を実行した後の被制御アプリケーション・システムの膨大な数の可能な状態を含む。種々の実施形態において、制御システムの制御活動を最適化することは、制御活動変数と、システム状態変数との間の関係に関連する大サイズの確率論的問題を解くことを含む。さらに、大サイズの確率論的問題は、被制御アプリケーション・システムのための1つ又はそれ以上の制約値に加えて、被制御アプリケーション・システムに関連するコスト関数を考慮する。
【0085】
ブロック204では、制御システムのプロセッサは、制御活動変数及びシステム状態変数に対応するデータに基づいて、制約付き強化学習(CRL)モデルを、被制御アプリケーション・システムにフィットする。言い換えると、制御システムのプロセッサは、機械学習フレームワーク内の大サイズの確率論的問題を考慮すると共に、問題を定義する、制約値、制御活動変数、及びシステム状態変数の1つ又はそれ以上の観点において被制御システムの動作を最良に説明する、CRLモデルを出力する。いくつかの実施形態においては、CRLモデルは、制約付き深層強化学習(CDRL)モデルである。
【0086】
種々の実施形態においては、モデル・フィッティング・プロセスは、当技術において知られている、ポリシー
【0087】
【数29】
を生成するためのパラメータ調整及び最適化といった標準的な強化学習技術を実行することを含む。
【0088】
このポリシーは、一般に1と、0との間の確率Pを提供する制御活動uを制御するマップであり、被制御アプリケーション・システムの環境がシステム状態、
【0089】
【0090】
を示す場合に採用される。ポリシーは、当技術において知られるように、定常的、すなわち時間独立、又は非定常的、すなわち時間依存とすることができる。さらに、ポリシーに基づいて、システム状態変数と、制御活動変数との特定的なペア、すなわち状態-活動ペアの結合確率が、
【0091】
【0092】
として計算されることができ、ここで、
【0093】
【0094】
は、制御システムによって受信されたデータに基づいて計算される。
【0095】
種々の実施形態においては、CRL(又はCDRL)モデルのためのポリシーは、暗黙的である。特定的には、CRL(又はCDRL)モデルのための入力としての所与のシステム状態について、制御活動の分布(又は最も可能性のある制御活動)が出力として提供される。システム状態の全数が膨大であるか又は無限でさえある可能性があるので、ポリシーは、通常には明示的に計算されない。そのかわり、CRL(及びCDRL)プロセスは、“お告げ”の種類のものとして実行する。しかしながら、本明細書において説明される実施形態によれば、確率は、入力として受信されるデータを使用するフィッティング・プロセスの間に推定されることができ、かくして暗示的なポリシーが提供される。
【0096】
CRL(又はCDRL)についてのポリシーを生成するために使用されることができる1つの特定的なプロセスは、リワード被制約ポリシー最適化(reward constrained policy optimization:RCPO)プロセスとして参照される。このプロセスは、Tessler、 Mankowitz、及びMannor (2018)による、論文、名称“Reward Constrained Policy Optimization,”に記載されている。そこに記載されるように、被制約最適化問題について、タスクは、目的関数、
【0097】
【0098】
を、不等式制約、
【0099】
【0100】
を満たしながら、最大化させるポリシーを見いだすことである。RCPOアルゴリズムは、これを、ペナルティ・シグナルとしてリワード関数へと制約を組み込むことによって達成する。ペナルティ・シグナルは、ポリシーを、制約を満たす解に向けてガイドする。
【0101】
より特定的には、RCPOアルゴリズムのため、大サイズの確率論的問題は、先ずラグランジュ緩和技術を使用して定式化することであり、これは、被制約最適化問題を、等価な制約されない最適化問題に変換することを含む。ペナルティ項は、非妥当性のために追加され、妥当でない解は準最適である。この結果、所与のCMDPベースのモデルについて、制約されていない最適化問題は、式(5)に示されるように定義され、
ここで、Lは、ラグランジアンであり、λ≧0は、ラグランジアン乗数(ペナルティ係数)である。
【0102】
【0103】
式(5)のゴールは、鞍点
【0104】
【0105】
を見いだすことであり、ここで、妥当解は、
【0106】
【0107】
を満たすものである。次に、勾配が推定される。特定的には、制御活動変数及びシステム状態変数に関連するデータは、式(6)及び(7)に示されるように、
【0108】
【0109】
被制約最適化問題のためのアルゴリズムを定義するために使用される。式(6)及び(7)において、Γθは、射影演算子であり、これは、コンパクトで凸のセットへと射影することによりイタレートθkを安定に保持する。Γλは、λを範囲
【0110】
【0111】
【0112】
は、式(5)から導出され、ここで、
【0113】
【0114】
に対する定式化は、式(8)及び(9)に示される対数尤度トリック(log-likelihood trick)を使用して導出される。
【0115】
【0116】
さらに、式(6)及び(7)において、η1(k)及びη2(k)は、ポリシーのアップデートがペナルティ係数λのそれよりも早いタイムスケールで実行されることを保証する、ステップ・サイズである。このことは、式(10)に示される仮定を導出し、これは、イタレート
【0117】
【0118】
が、妥当解である固定ポイント(すなわち、局所的な最小)に収束するであろうというものである。
【0119】
【0120】
RCPOアルゴリズムは、アクター・クリティック(actor-critic)に基づくアプローチを使用することにより、このプロセスを拡張し、そこにおいて、アクターは、ポリシーπを学習し、かつクリティックは、時間的差の学習を使用、すなわち回帰的Bellman方程式を通して学習する。さらに特定的には、RCPOアルゴリズムの下で、アクター及びクリティックは、ディスカウンテッド・ペナルティ(discounted penalty)として参照される、代替的なガイディング・ペナルティ(guiding penalty)を使用してトレーニングされる。ディスカウンテッド・ペナルティは、式(11)に示されるように定義される。
【0121】
【0122】
追加的に、ペナライズド・リワード関数は、式(12)及び(13)として示されるように定義される。
【0123】
【0124】
式(13)のペナライズド値は、TD学習クリティックを使用して推定されることができる。RCPOアルゴリズムは、アクター及びクリティックが式(13)の解決後にアップデートされ、かつλが式(6)の解決後にアップデートされる、3つのタイムスケール(被制約アクター・クリティック)のプロセスである。RCPOアルゴリズムは、以下の条件下で妥当解に収束する:(1)妥当解のセットは、
【0125】
【0126】
(2)局所的な最小のセット
【0127】
【0128】
は、
【0129】
【0130】
及び(3)
【0131】
【0132】
その後、RCPOアルゴリズムが、ほとんど確実に固定されたポイント、
【0133】
【0134】
これが妥当解であることを仮定する。
【0135】
種々の実施形態において、別のアクター・クリティック・プロセスがCRLモデルを被制御アプリケーション・システムにフィットするために使用することができる。制御システムがこのプロセスを実行するために従うことができるステップは、以下のようにまとめられる:(1)勾配上昇法を使用して被制御アプリケーション・システムの数学的表現をフィットするラグランジュ乗数を学習することであって、ここで、最急降下法が主な方法(例えば、アクター・クリティック・アルゴリズム)のために使用され;かつ(2)学習したラグランジュ乗数を使用してCRLモデルとして数学的表現を定式化する。これは、時間分離の特性、すなわち、最急降下法及び勾配上昇法についてゆっくり及び速い時間スケールの結果、作用する。種々の実施形態においては、このプロセスは、CDRL技術を使用する、より一般化された制約について適用されることができる。さらに、このプロセスは、ボルカー(2005)による論文、題名“制約付きマルコフ決定プロセスのためのアクター・クリティック・アルゴリズム。Systems & control letters”においてより詳細に説明される。
【0136】
ブロック206では、プロセッサは、関心のある制御活動変数を選択することにより、システム状態変数のサブセットを自動的に識別し、かつ関心のあるそれぞれの制御活動変数について、関心のある制御活動変数を推奨するためにCRLモデルを駆動するシステム状態変数を識別する。種々の実施形態において、このステップは、例えば、数千の変数を、10より少ないか、又は20より少ない変数へと絞り込むことを含む。さらに、識別されたシステム状態変数のサブセットは、1つ又はそれ以上の制約値及び被制約数学モデルに関連するコスト関連の変数により記述される。
【0137】
種々の実施形態において、ブロック206でのシステム状態変数のサブセットを自動的に識別することは4つのステップを含む。第1に、制御活動変数及びシステム状態変数のペア、すなわち、ブロック204に関連して記述された状態-活動ペアについての占有尺度が計算される。占有尺度は、式(14)に示されるように計算される。
【0138】
【0139】
この計算は、ブロック204に関連して記載されたモデル・フィッティング・プロセスの間に計算された状態-活動ペアの確率に基づく。それぞれの状態-活動ペアについての占有は、状態-活動ペアが到達される0と1の間の頻度を現す。種々の実施形態においては、占有尺度はまた、ブロック204に関連して記述された、モデル・フィッティング・プロセスの間に計算されることができる。さらに、占有尺度は、式(15)に示されるように、ディスカウント・ファクタβ(将来のリワードをディスカウントする)及び無限区間で定式化されることができる。
【0140】
【0141】
第2に、制御システムは、関心のある数多くの制御活動を選択し、そこで、関心のあるそれぞれの制御活動は、uiにより表される。いくつかの実施形態においては、関心のある制御活動は、制御システムのオペレータにより手作業によって選択される。例えば、制御システムのユーザ・インタフェースは、オペレータに対して、オペレータがそれから利便性よく選択することができる制御活動のリストを提示するか、又はオペレータは、関心のある制御活動のコンピュータ可読な識別値を手作業でタイプすることができる。他の実施形態においては、関心のある制御活動は、制御システム内に事前プログラミングされたトリガ・イベントの自動生成された表示に応答して、制御システムにより自動的に選択される。
【0142】
第3に、制御システムは、関心のあるそれぞれの制御活動を含み、かつ事前定義された閾値に従う占有尺度を有する特定の状態-活動ペアを自動的に決定する。例えば、関心のあるそれぞれの制御活動について、最高の占有尺度を有するDの状態-活動ペア(D≧1)、すなわち、
【0143】
【0144】
が決定されることができる。これらの状態-活動ペアは、関心のある特定の制御活動uiを推奨するようにCRLモデルを動作するシステム状態変数を含むであろう。第4に、状態-活動ペアは、分離され、かつ分析されて、関心のあるそれぞれの制御活動を推奨するためにCRLモデルを駆動することに最も実質的に影響を有するシステム状態変数の特定のサブセットを識別する。
【0145】
ブロック208で、プロセッサは、システム状態変数のサブセットを使用して、CRL(又はCDRL)モデルの状態空間の次元削減を自動的に実行する。これは、ブロック206で識別されたシステム状態変数のサブセットをCRLモデルに組み込むことを含む。種々の実施形態において、このやり方においてCRLモデルの状態空間の次元削減を実行することは、複雑で大サイズの確率論的問題を制御システムにより、より迅速かつ効率的に解くことができる、より簡潔な確率論的問題に変換する。
【0146】
ブロック210では、プロセッサは、状態空間次元削減の後の1つ又はそれ以上の制約値が課される被制御システムの制約付きマルコフ決定プロセス(CMDP)モデルについての遷移確率マトリックスを推定する。種々の実施形態においては、この遷移確率の推定プロセスは、3つのステップに分解される可能性がある。第1にプロセッサは、可能な限りのカバレッジで状態空間及び活動空間を分析する。言い換えれば、プロセッサは、異なる制御活動に応答して異なるシステム状態の間の、できるだけ多くの遷移を分析する。この目的のため、プロセッサは、関心のある制御活動変数及びシステム状態変数の削減されたセットを使用して、それぞれのシステム状態について最小に使用される制御活動に焦点を当てつつ、可能な遷移のシミュレーションを動作することができる。
第2に、プロセッサは、特定の制御活動のためのシステム状態におけるそれぞれの変化についての遷移数を、変数のサブセット内の制御活動変数及びシステム状態変数の全数で除算することにより、遷移確率を推定する。第3に、プロセッサは、遷移確率マトリックスを生成するために補間を実行する。これは、活動依存のシステム状態変数又は活動非依存のシステム状態変数、又はこれらの両方についての近傍のシステム状態を使用することにより、又は既約性を保証する方法を実行することにより達成されることができる。得られる遷移確率マトリックスは、変数のサブセットに基づく被制御アプリケーション・システム(1つ又はそれ以上の制約値が課される)の動作の簡潔なモデルを表す。
【0147】
ここで、遷移確率推定の数学的説明を参照して、制御活動変数のセットは、
【0148】
【0149】
であり、ここで、それぞれの制御活動変数の数は、
【0150】
【0151】
として表されると共に、制御活動変数の全数は、
【0152】
【0153】
である。システム状態変数の削減されたセットは、
【0154】
【0155】
で表され、ここで、それぞれのシステム状態変数の数は、
【0156】
【0157】
であり、かつ削減されたセット内のシステム状態変数の全数は、
【0158】
【0159】
である。制御活動iに伴われてシステム状態jに到来する数は、
【0160】
【0161】
により表され、かつ、制御活動iが実行された後にシステム状態jからシステム状態kへと遷移する数は、
【0162】
【0163】
で表される。これらの定義と共に、遷移確率マトリックスの基本的な推定が、式(16)に示される。
【0164】
【0165】
種々の実施形態において、システム状態変数は、2つのセットに分割される:制御可能及び制御不能。被制御アプリケーション・システムがWWTPである実施形態については、制御不能なシステム状態変数は、例えば、流入液フロー、流入液の化学的負荷、及び電気的コストによる時間的期間のタイプを含む。制御活動及び制御可能なシステム状態変数は、制御不能なシステム状態変数の間の遷移に影響しない。制御可能なシステム状態変数は、被制御アプリケーション・システムの内部又は流出液特性を記述すると共に、いかなるタイプの過去の活動及びシステム状態変数により影響されることができる。制御不能なシステム状態変数は、
【0166】
【0167】
によって表され、ここで、インデックス1,...,Iを有するシステム状態変数は、制御不能である。
【0168】
【0169】
は、それぞれ、制御不能及び制御可能なシステム状態変数に対応する状態空間である。全状態空間は、これら2つの空間のカーテシアン積、すなわち、
【0170】
【0171】
であり、それらの次元は、それぞれ、
【0172】
【0173】
【0174】
である。制御不能の状態空間から状態jに対応する状態空間からのシステム状態のセット、
【0175】
【0176】
【0177】
として定義される。言い換えれば、
【0178】
【0179】
である。制御可能な状態空間からの状態jに対応する状態空間からのシステム状態のセット、
【0180】
【0181】
は、
【0182】
【0183】
で定義される。言い換えれば、
【0184】
【0185】
さらに、もしも、
【0186】
【0187】
であれば、
【0188】
【数76】
は、状態kの制御不能の部分を表し、かつ
【0189】
【0190】
は、状態kの制御可能な部分を表す。言い換えれば、状態kは、状態のコンカテネーション、
【0191】
【0192】
である。アクション-駆動カバレッジについて、現在のシステム状態が、
【0193】
【0194】
であるものと仮定する。それまでの最小の選択された制御活動、すなわち、
【0195】
【0196】
を選択する。もしも、そのような制御活動がいくつかあるならば、均一な分布にしたがってそれらの間からランダムに選択する。同様に、状態-駆動カバレッジについて、現在のシステムが、
【0197】
【0198】
であるものと仮定する。現在の時間までにシステム状態kに到来する全数は、
【0199】
【0200】
により表される。加えて、
【0201】
【0202】
【数84】
は、遷移確率の現在の推定である。制御活動
【0203】
【0204】
を選択する。もしも、いくつかのそのような制御活動があるならば、均一な分布にしたがってそれらの間からランダムに選択する。状態-駆動カバレッジは、
【0205】
【数86】
の多さでシステム状態に到来することを意味するか、又は
【0206】
言い換えれば、システム状態にめったに到来しない制御活動を選択する。
【0207】
種々の実施形態においては、このプロセスは、遷移確率の合理的な初期推定を取得するため比較的長い時間的期間についての活動-駆動カバレッジを使用して反復される。その後、本プロセスは、活動-駆動及び状態-駆動カバレッジの間で互換的に繰り返される。
【0208】
遷移確率マトリックスの補間のため、第1のプロセスは、近傍のシステム状態に基づく補間を含む。システム状態の近傍システム状態、
【0209】
【0210】
は、1つを除いて全システム状態変数が、システム状態変数、
【0211】
【0212】
に一致し、かつ1つのシステム状態変数による差は、1つの隣接するインターバルに等しいシステム状態である。状態、
【0213】
【0214】
の近傍のシステム状態のセットに加えて、システム状態
【0215】
【0216】
それ自体は、Ljによって表される。Ljのサブセットは、
【0217】
【0218】
によって表され、
【0219】
【0220】
は、制御活動iが少なくとも1回行われたシステム状態を含む。さらに、
【0221】
【0222】
は、このセットのサイズを表す。
【0223】
パラメータ
【0224】
【0225】
が使用され、かつ補間は、制御活動及びシステム状態について、
【0226】
【0227】
で実行される。M=10の値は、典型的に使用され、補間された確率は、式(17)に示されるように計算される。
【0228】
【0229】
このプロセスは、もしも、隣接するシステム状態への到来の数
【0230】
【数97】
が、システム状態j及び制御活動iについての閾値基準において、
【0231】
【数98】
で置き換えられるのであれば、反復的に実行することができる。
【0232】
遷移確率マトリックスの補間のための第2のプロセスは、遷移確率マトリックスの既約性を保証することを含む。このことは、もしも、遷移確率マトリックスがいくつかの制御活動iにおいて既約ではない場合、その後の最適解がいくつかのシステム状態がこの制御活動の下で到来しないことを暗示するため、重要であり、このことは多くの被制御アプリケーション・システムについて不適切である。したがって、既約性の保証方法が、この問題に対処するために使用される。既約性の保証方法は、パラメータε、0≦ε≦1を使用し、ここで、ε=0.01が典型的に仮定される。初期のシステム状態として所与のs0について、既約性保証方法は、以下のステップを含む。先ず、すべての制御活動i∈Uについて、システム状態k及びjの値は、それぞれ、式(18)及び(19)で示されるとおりである。
【0233】
【0234】
直接的なアルゴリズムが、その後遷移確率マトリックスを規格化するために使用され、ここで、全部の行の合計は1に等しい。
【0235】
いくつかの実施形態においては、第3のプロセスが遷移確率マトリックスの補間のために使用される。特定的には、第1及び第2のプロセスを介して得られた遷移確率は、制御不能のシステム状態変数に関して、顕著な歪みを含む可能性がある。したがって、制御不能のシステム状態変数の補間は、この歪みを修正するために実行されることができる。このプロセスは、さらに、Zadorojniy,Shwartz,Wasserkrug,及び Zeltyn(2106)による論文、題名“排水処理プラントの動作最適化:CMDPに基づく分解アプローチ”に記載される。
【0236】
ブロック212では、プロセッサは、遷移確率マトリックス、1つ又はそれ以上のコスト目標、及び1つ又はそれ以上の制約関連のコストを使用して、線形計画(LP)問題としてCMDPモデルを定式化する。いくつかの実施形態においては、LP問題は、例えば、Python/Optimization Programming Language (OPL)を使用して定式化することができ、その後、IBM CPLEX(登録商標)Optimizerを使用して解くことができる。ブロック212の数学的説明は、式(20)~(25)に示されており、ここで、非ゼロのエントリは、初期システム状態に対応する。
【0237】
【0238】
図2のブロック図は、方法200のブロック202-212がいかなる特定の順序で実行されるべきか、若しくは方法200のブロック202-212のすべてがすべてのケースに含まれるべきということを示すことを意図しない。さらに、特定の実装の詳細に依存して、方法200内においていかなる数の追加のブロックが含まれてもよい。例えば、いくつかの実施形態においては、本方法200は、LP問題を分析して、1つ又はそれ以上の制約値が課せられる被制御アプリケーション・システムの動作を最適化するであろう1つ又はそれ以上の制御活動を決定すること、及び制御システムを介して1つ又はそれ以上の制御活動を実行することを含む。さらに、いくつかの実施形態においては、本方法200は、多数回実行され、かつ得られたLP問題は、被制御アプリケーション・システムの動作に関連する数多くの異なる予測的シナリオを分析するために使用される。例えば、本方法200は、種々の異なる制約値又は種々の異なるタイプの制約又はそれらの組み合わせの下で、被制御アプリケーション・システムの動作に関しての予測(又は、“したらどうなるだろう”分析)を提供するために使用することができる。
【0239】
本発明の種々の実施形態の説明は、例示の目的のために提示されてきたが、開示された実施形態に尽きるとか、限定されることを意図しない。多くの修正及び変更は、説明された実施形態の範囲及び精神から逸脱することなしに当業者において自明であろう。本明細書において使用された用語は、実施形態の原理、現実的な適用、又は市場に見いだされる技術を超えた技術的改善を最良に説明し、又は当業者の他のものが本明細書に開示された実施形態を理解することができるように選択された。