JP6626224B2 - センサデータを使用して、ターゲットシステムの機能性をモデル化することによってターゲットシステムにおける制御を支援すること - Google Patents

センサデータを使用して、ターゲットシステムの機能性をモデル化することによってターゲットシステムにおける制御を支援すること Download PDF

Info

Publication number
JP6626224B2
JP6626224B2 JP2018560015A JP2018560015A JP6626224B2 JP 6626224 B2 JP6626224 B2 JP 6626224B2 JP 2018560015 A JP2018560015 A JP 2018560015A JP 2018560015 A JP2018560015 A JP 2018560015A JP 6626224 B2 JP6626224 B2 JP 6626224B2
Authority
JP
Japan
Prior art keywords
target
model
control
data
rules
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2018560015A
Other languages
English (en)
Other versions
JP2019528494A (ja
Inventor
コーン ウォルフ
コーン ウォルフ
ルイス サンドバル マイケル
ルイス サンドバル マイケル
Original Assignee
ヴェリトーン アルファ インコーポレイテッド
ヴェリトーン アルファ インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヴェリトーン アルファ インコーポレイテッド, ヴェリトーン アルファ インコーポレイテッド filed Critical ヴェリトーン アルファ インコーポレイテッド
Publication of JP2019528494A publication Critical patent/JP2019528494A/ja
Application granted granted Critical
Publication of JP6626224B2 publication Critical patent/JP6626224B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/30Control or safety arrangements for purposes related to the operation of the system, e.g. for safety or monitoring
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/30Control or safety arrangements for purposes related to the operation of the system, e.g. for safety or monitoring
    • F24F11/46Improving electric energy efficiency or saving
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/62Control or safety arrangements characterised by the type of control or by internal processing, e.g. using fuzzy logic, adaptive control or estimation of values
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/62Control or safety arrangements characterised by the type of control or by internal processing, e.g. using fuzzy logic, adaptive control or estimation of values
    • F24F11/63Electronic processing
    • F24F11/64Electronic processing using pre-stored data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/62Control or safety arrangements characterised by the type of control or by internal processing, e.g. using fuzzy logic, adaptive control or estimation of values
    • F24F11/63Electronic processing
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F2140/00Control inputs relating to system states

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Combustion & Propulsion (AREA)
  • Chemical & Material Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Feedback Control In General (AREA)
  • Remote Monitoring And Control Of Power-Distribution Networks (AREA)
  • Supply And Distribution Of Alternating Current (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

本発明は、ターゲットシステムにおける制御の支援に関する。
入力または他の制御要素を有する様々な種類の物理システムのための自動化制御システムであって、その物理システムの所望の出力または他の挙動を提供しようとするために入力または他の制御要素を操作することができる自動化制御システムを実行するための試みがなされている。そのような自動化制御システムは、制御されている物理システムの状態の不確実性に関係付けられた課題、ならびに非常に短い量の時間および部分的情報のみで制御判断を行う必要に対処しようとすることを含めて、そのような機能性を実行しようとするために、様々な種類のアーキテクチャおよび基礎となるコンピューティング技術を使用している。そのような自動化制御システムの一例は、負荷をサポートするために電力を放電し、および/または電源からの電力を使用して充電するバッテリの動作を制御するためのシステムを含み、バッテリの内部温度および/または化学状態に関する不確実性、ならびに場合によっては負荷、電源、および/またはバッテリの内部状態の継続的変化を伴う。
しかしながら、制御されるシステムの現在の状態について、および異なる種類の入力がどのように自動化制御システムの動作に影響するかについての不確実性の管理に関することを含めて、既存の自動化制御システムならびにそれらの基礎となるアーキテクチャおよびコンピューティング技術には様々な困難が存在する。
ターゲットシステムの協調分散制御を行うためのシステムが構成され始動されることができる例示的環境を示すネットワーク図である。 ターゲットシステムの協調分散制御を行うためのシステムが実行されることができる例示的環境を示すネットワーク図である。 データトモグラフ(data tomograph)コンポーネントが対応するターゲットシステムに関する状態情報を推定するためにどのように使用されてよいかを示すフロー図である。 トモグラフィ技法が対応するターゲットシステムについてのセンサデータに基づいてソフトルールおよび他の情報を生成しデータハミルトン関数へ追加するためにどのように使用されてよいかを示すフロー図である。 ターゲットシステムの部分的に知られた状態から欠損している情報を訂正するまたは他の形で完了させるためにトモグラフィ技法を使用するシステムのエージェントアーキテクチャ概略の例を示すブロック図である。 ターゲットシステムの部分的に知られた状態から欠損している情報を訂正するまたは他の形で完成させるためにトモグラフィ技法を使用する例を示すフロー図である。 ターゲットシステムの例示的センサに関わる動作を示すブロック図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 バッテリシステム動作データを分析してバッテリシステムの自動化制御を改善する例を示す図である。 バッテリシステム動作データを分析してバッテリシステムの自動化制御を改善する例を示す図である。 バッテリシステム動作データを分析してバッテリシステムの自動化制御を改善する例を示す図である。 バッテリシステム動作データを分析してバッテリシステムの自動化制御を改善する例を示す図である。 センサデータを使用してモデル化されたバッテリの状態に一部基づいてバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。 ターゲットシステムの協調分散制御を構成された方式で行うためにシステムの実施形態を実行するのに適した例示的コンピューティングシステムを示すブロック図である。 協働分散判断(Collaborative Distributed Decision:CDD)システムルーチンの例示的実施形態のフロー図である。 CDD判断モジュール構築(CDD Decision Module Construction)ルーチンの例示的実施形態のフロー図である。 CDD判断モジュール構築ルーチンの例示的実施形態のフロー図である。 CDD判断モジュール構築ルーチンの例示的実施形態のフロー図である。 判断モジュールルーチンの例示的実施形態のフロー図である。 判断モジュールルーチンの例示的実施形態のフロー図である。 CDD制御アクション決定(CDD Control Action Determination)ルーチンの例示的実施形態のフロー図である。 CDD制御アクション決定ルーチンの例示的実施形態のフロー図である。 CDD調整制御管理(CDD Coordinated Control Management)ルーチンの例示的実施形態のフロー図である。 CDD調整制御管理ルーチンの例示的実施形態のフロー図である。 制御されているターゲットシステムのためのルーチンの例示的実施形態のフロー図である。 状態情報修復手順の一部として実行されたトモグラフコンポーネントを含む自動化制御システムの実施形態の動作を示すフロー図である。 複数のトモグラフコンポーネントであって、各トモグラフコンポーネントが、基礎となるターゲットシステムの複数の個別コンポーネントのうちの1つに関係付けられた複数のトモグラフコンポーネントを有する、分散された自動化制御システムの例示的実施形態を示すブロック図である。 トモグラフコンポーネントを含み、調整された方式で複数のバッテリからのDC電力の自動化制御を行うシステムの実施形態の例示的コンポーネントを示すブロック図である。 家庭の発電および電力使用が外部エンティティによって監視および同期されている、ソーラー電力が生成されている家庭電力システムの一部である、バッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図である。
指定された物理システムまたは他のターゲットシステムの少なくともいくつかの動作を制御または他の形で操作するように自動化制御システムを実行するための技法が説明される。少なくともいくつかの実施形態では、説明されている技法は、ターゲットシステムの現在の状態および動作特性の改善されたモデルを生成するために、ターゲットシステムの動作に関するデータを(たとえば、センサデバイスから)取得し分析することと、ターゲットシステムに対して行うための現在および/または将来のさらなる自動化制御アクションを決定することの一部として、改善されたモデルを使用することとを含む。少なくともいくつかのそのような実施形態では、ターゲットシステムのデータの分析ならびに現在の状態および動作特性のモデル化は、ターゲットシステムの内部構造および動作を理解することなく単にターゲットシステム出力を入力から推定する(代わりに「システム識別」を行うと呼ばれる)ことを試みるのではなく、ターゲットシステムに対する先行の入力データおよびターゲットシステムの結果の(resulting)挙動を分析して、ターゲットシステムの内部動作をモデル化する関数および/または他の構造を生成する(本明細書では一般に「トモグラフィ」コンポーネントなどによる「トモグラフィ」または「トモグラフィ」技術を使用すると呼ばれる)ことを含んでよい。加えて、ターゲットシステムの現在の状態のモデル化は、少なくともいくつかの実施形態では、十分な内部状態構造情報または他の情報の欠如などによる、ターゲットシステムの1つまたは複数の部分についての状態情報のコンフリクトを、完成または修復または他の形で解決するために、ならびにターゲットシステムの内部状態および動作特性の関数または他のモデルの学習または他の改善を可能にするために行われてよい。ターゲットシステムの状態および動作特性のそのようなモデル化を行うことおよび改善すること、ならびに特定の方式でターゲットシステムの結果の改善されたモデルを使用することに関係付けられた追加の詳細が、以下に説明され、説明されている技法の一部または全部は、少なくともいくつかの実施形態では、1つまたは複数の「トモグラフ」コンポーネントの自動化された動作によって、任意選択で、特定種類のターゲットシステムを制御する1つまたは複数のCDD(協働分散判断)システムの一部としてまたはそのようなCDDシステムと関連して、行われる。
上記されたように、ターゲットシステムに対する先行入力データおよびターゲットシステムの結果の挙動に関する情報を含めて、様々な種類のデータが、ターゲットシステムの現在の状態および動作特性をモデル化することの一部として取得および使用されてよい。いくつかの実施形態および状況では、そのようなデータは、様々な種類の1つまたは複数のハードウェアセンサから自動化された方式で収集されたデータを含んでよく、いくつかの実施形態および状況では、そのようなデータは、人間のユーザのアクションに関する情報またはそのような人間に関する他の情報を含んでよい。特定の状況に関して特に示されない限り、本明細書で使用される用語「センサ」および「センサデータ」は、ソースまたは種類に関わらず、そのようなデータを一般に指し、ハードウェアからのデータおよび/または人間のユーザからのデータもしくは人間のユーザに関するデータを含む。そのようなセンサデータを取得および使用することに関係付けられた追加の詳細が以下に含まれる。
ターゲットシステムの現在の状態および動作特性をモデル化するため、ならびにターゲットシステムに対して行う現在および/または将来の自動化制御アクションを決定することの一部としてターゲットシステムの結果のモデルを使用するための説明されている技法は、様々な実施形態において様々な種類のターゲットシステムに対して行われることができる。1つの非限定的例として、物理ターゲットシステムは、(たとえば、局部負荷のため、様々な位置における様々な負荷をサポートする電気グリッドのためなどに)電力を貯蔵および提供するために使用される1つまたは複数のバッテリを含むことができ、ターゲットシステムを制御するための自動化された動作は、各バッテリの状態の特性を使用して、バッテリから提供されおよび/またはバッテリによって貯蔵されたDC(直流)電力の自動化制御を行うことを含むことができる。そのような実施形態では、1つまたは複数のトモグラフコンポーネントの自動化された動作は、1つまたは複数のバッテリへの入力、それらからの出力、それらに提供される制御信号命令、およびそれらの他の状態に関する情報(たとえば、内部温度測定値、使用のために出力される電流および/または電圧、貯蔵のために入力される電流および/または電圧、1つまたは複数のバッテリの周囲環境の一部としてのそれらの外部の温度測定値など)を受け取ることと、1つまたは複数のバッテリの現在の状態および動作特性をモデル化することの一部として、そのような情報を使用することとを含むことができる。そのような改善されたモデル化された情報が与えられると、1つまたは複数のバッテリを制御するCDDシステムは、そのような情報を使用して、ターゲットシステムの実際の現在の状態および挙動をより良く反映する現在および/または将来の制御アクションを決定することができる。別の非限定的例として、物理ターゲットシステムは、暖房および/または冷房能力(たとえば、1つまたは複数のHVAC、すなわち暖房、換気および空調ユニット)を含むマルチルーム建物を含むことができ、ターゲットシステムを制御するための自動化された動作は、部屋のサブセットの特性(たとえば、温度センサを有する部屋のサブセットにおいて測定された温度)を使用して、暖房および/または冷房能力から部屋のすべてに対して提供される暖房および/または冷房の自動化制御を行うことを含むことができる。そのような実施形態では、1つまたは複数のトモグラフコンポーネントの自動化された動作は、暖房および/または冷房能力ならびに建物の少なくともいくつかの部屋への入力、それらからの出力、それらに提供される制御信号命令、およびそれらの他の状態に関する情報(たとえば、内部温度測定値、暖房および/または冷房能力の時間および/またはエネルギー使用の量、建物の周囲環境の一部としての建物の外部の温度測定値など)を受け取ることと、建物の部屋の温度の現在の状態をモデル化することの一部として、そのような情報を使用することとを含むことができる。そのような改善されたモデル化された情報が与えられると、暖房および/または冷房能力を制御するCDDシステムは、そのような情報を使用して、ターゲットシステムの実際の現在の状態および挙動をより良く反映する現在および/または将来の制御アクションを決定することができる。
ターゲットシステムの現在の状態および動作特性のそのようなモデル化ならびにモデル化された情報のそのような使用に関係付けられた追加の詳細が以下に含まれるが、説明されている技法は、それらの一部が後でさらに論じられる、電力の貯蔵および提供ならびに/または暖房/冷房能力に使用される1つまたは複数のバッテリを有するターゲットシステムの代わりまたは追加であるかに関わらず様々な種類のターゲットシステムと共にさらに使用されてよいことは理解されよう。そのようなトモグラフィ技法がターゲットシステムの現在の状態をモデル化するために使用されてよいターゲットシステムの非限定的例は、1つまたは複数の電源(たとえば、1つまたは複数のソーラーパネルグリッド、1つまたは複数の風力タービンなど)および1つまたは複数の蓄電および電源機構(たとえば、1つまたは複数のバッテリ)を含む居住場所などにおけるマイクログリッド電気設備、エネルギーを生成するために使用される生分解性廃棄物または他の固形廃棄物システム、動的負荷用のインテリジェントマイクログリッドディスパッチ、船舶用発電機を有するマイクログリッド、(たとえば、放射および対流機構、DC−ACインバータ、AC−DC電力変換器および整流器、放射システムなどを有する炉および他の熱プロセスと共に使用するための)ハーモニックハーベスティングシステムなどを含む。
図1Cは、データトモグラフコンポーネントが対応するターゲットシステムに関する状態情報を推定するためにどのように使用されてよいかを示す例示的フロー図195である。具体的には、データは、時間経過と共にターゲットシステムの実際の動作から取得されて(たとえば、ターゲットシステムに供給される一部または全部の入力、ターゲットシステムからの結果の出力、ターゲットシステムの動作に関する測定されたセンサデータなどを識別し)、要素195bに関連して図1Cに示されるように、ターゲットシステムの動作のデータモデルを生成するために使用されてよい。次いで、一連の問い合わせ195aが、データモデルに供給され、それにより、たとえば、1つまたは複数の入力またセンサの異なる値を伴う複数の状況に対応する抽出された観測されたデータ195dを収集することができ、この例では、単一の「k番目」のセンサ195cのポテンシャルを決定することとみなされる。次いで、センサに関する観測されたデータは、この例では、プロパゲータコンポーネント195eに供給される。プロパゲータコンポーネント195eは、ターゲットシステムおよびその動作の全体的表現を生成し、生成された表現をデータトモグラフコンポーネント195gに提供し、この例では、生成された全体的表現は、以下により詳細に論じられるように全体的ハミルトン関数の形態である。加えて、ターゲットシステムの動作に関するルールを有する知識ベース195f(たとえば、ターゲットシステムを表わすためにそれらのルールを使用するターゲットシステムの初期モデル)が、ターゲットシステムおよびその動作の第2のルールベースの表現を生成し、また、その生成された第2の表現をデータトモグラフコンポーネント195gに供給して、たとえば、決定されるルールによって予想されるk番目のセンサの挙動を可能にし、この例では、ルールは、真また偽として評価するバイナリルールであり、要素195fから生成された第2の表現は、やはり以下により詳細に論じられるようにルールベースのハミルトン関数の形態である。次いで、データトモグラフコンポーネント195gは、I/O履歴情報195hも使用して、2つの異なる世代の間の差異(たとえば、第2のルールベースの生成された表現が、第1の全体的な生成された表現に反映されるような状況においてターゲットシステムの実際の挙動を予想するのに失敗する形式)を評価し、ターゲットシステムおよびその動作の第3の生成された表現を作成し、この例では、生成された第3の表現は、以下により詳細に論じられるように、1つまたは複数のソフトルール(たとえば、真値または偽値以外の1つまたは複数の値を含む複数のあり得る値をとることができ、特定の値における関連付けられた信頼度をさらに有することができるルール)を表わすハミルトン関数の形態である。次いで、データトモグラフ195gは、生成された第3の表現を使用して1つまたは複数のソフトルール195iを作成し、生成された第2のルールベースの表現と1つまたは複数のソフトルールに関する生成された第3のソフトルールベースの表現との組み合わせが、ターゲットシステムおよびその動作をより良くモデル化することができる。この方式でのデータトモグラフの使用の追加の議論は以下に含まれる。
しかしながら、データトモグラフコンポーネントおよびその機能性のさらなる議論の前に、そのような表現および他のモデルを使用するターゲットシステムの制御のより一般的な説明が提供される。具体的には、図1Aは、1つまたは複数のターゲットシステムの協調分散制御を行うためのシステムが構成され始動されることができる例示的環境を示すネットワーク図である。具体的には、CDDシステム140の実施形態は、1つまたは複数のコンピューティングシステム190上で実行されており、示された実施形態において、オンライン方式で動作しグラフィカルユーザインターフェース(GUI)(図示せず)および/または他のインターフェース119を提供し、クライアントコンピューティングシステム110の1つまたは複数のリモートユーザを可能にし、1つまたは複数の介在コンピュータネットワーク100を介してCDDシステム140と相互作用し、1つまたは複数の判断モジュールを構成および作成し、自動化制御システムの一部として含み、制御される1つまたは複数のターゲットシステムの各々と使用することを含む。
具体的には、ターゲットシステム1 160およびターゲットシステム2 170は、この例で示された例示的ターゲットシステムであるが、特定の実施形態および状況では、1つのみのターゲットシステムまたは多数のターゲットシステムが利用可能であることができ、各そのようなターゲットシステムは、ターゲットシステムに固有の方式でターゲットシステムの動作を実行するために、様々な機械的、電子的、化学的、生物学的、および/または他の種類のコンポーネントを含むことができることは理解されよう。この例では、1つまたは複数のユーザ(図示せず)は、CDDシステム140と相互作用して、ターゲットシステム1のための例示的自動化制御システム122を生成することができ、自動化制御システムは、この例では、後で配置および実行されたときにターゲットシステム1 160の部分を制御するように協調的に相互作用する複数の判断モジュール124を含む。自動化制御システム122を作成するためにユーザがCDDシステム140と相互作用するプロセスは、他の箇所でより詳細に論じられるように、場合によってはユーザの異なるグループの独立したアクションを含む、時間経過に伴う様々な相互作用を含むことができる。加えて、自動化制御システム122を作成および/またはトレーニングまたはテストするプロセスの一部として、それは、たとえば部分的初期状態情報を取得するために、示されたようにターゲットシステム1と1つまたは複数の相互作用を行うことができるが、一部または全部のトレーニングアクティビティは、少なくともいくつかの実施形態では、ターゲットシステム1における制御アクションの効果を、それらの制御アクションを実際にその時に実行することなくシミュレートすることを含むことができる。いくつかの実施形態および状況では、そのような初期ユーザ相互作用は、図1Cの知識ベース195fに反映されるように、バイナリルールに基づくターゲットシステムの初期ルールベースシステムモデルを生成するために使用されてよく、その場合、データトモグラフコンポーネントは、ターゲットシステムの改訂されたモデルに含めるように追加のソフトルールを自動的に学習することによって、そのような初期ルールベースシステムモデルを改善するために使用されてよい。
自動化制御システム122が作成された後、自動化制御システムは、CDDシステム140の1つまたは複数のコンピューティングシステム190において自動化制御システム122を任意選択で実行することなどによって、ターゲットシステム1 160の制御を含む動作を行うのを始めるように配置され実行されて、コンピュータネットワーク100を介してターゲットシステム1と相互作用することができる。他の実施形態および状況では、自動化制御システム122は、そうではなく、ターゲットシステム1の一部である1つまたは複数のコンピューティングシステム(図示せず)などにおいて、自動化制御システム1の一部または全部の配置されたコピー121に関して示されるように、ターゲットシステム1に対してローカルな方式で、自動化制御システム122の一部または全部(たとえば、複数の判断モジュール124のうちの1つまたは複数)のローカルコピーを実行することによって、配置されることができる。加えて、バイナリルールに基づくターゲットシステムの初期ルールベースシステムモデルを生成するために初期ユーザ相互作用が使用される実施形態および状況では、初期に配置された自動化制御システム122が、そのような初期ルールベースシステムモデルに基づくことができ、その初期に配置された自動化制御システム122の制御下のターゲットシステムの動作からのデータが収集され、図1Cのデータドメイン情報195bに反映されるように、使用する追加のソフトルールの後続の自動化された学習のために使用されてよく、その場合、データトモグラフコンポーネントは、ターゲットシステムの改訂されたモデルに含めるように追加のソフトルールを自動的に学習することによって、そのような初期ルールベースシステムモデルを改善するために使用されてよく、その後、自動化制御システム122の改訂されたバージョンは、それらの自動的に学習されたソフトルールの機能性を含むように配置される。
自動化制御システム122に関して論じられたのと同様に、(同じユーザ、重複するユーザ、または自動化制御システム122を作成するのに関わったユーザと完全に無関係なユーザであるかに関わらず)1つまたは複数のユーザが、通信ネットワーク100を介してCDDシステム140と同様に相互作用して、ターゲットシステム2 170の一部または全部を制御するのに使用するための別個の自動化制御システム126を作成することができる。この例では、ターゲットシステム2のための自動化制御システム126は、自動化制御システム126のための制御アクションのすべてを行う単一の判断モジュール128を含む。自動化制御システム126は、たとえば、1つもしくは複数のコンピューティングシステム190において、および/またはターゲットシステム2の一部である1つもしくは複数のコンピューティングシステム(図示せず)においてローカルに実行されるように、自動化制御システム122に関して論じられたのと同様の方式でターゲットシステム2について同様に配置および実行されることができるが、自動化制御システム2の配置されたコピーは、この例では示されない。自動化制御システム122および/または126は、それぞれ特定の判断モジュール124および128とは別の他のコンポーネントおよび/または機能性をさらに含むことができるが、そのような他のコンポーネントおよび/または機能性は図1Aに示されていないことは理解されよう。
ネットワーク100は、たとえば、おそらく様々な別々の当事者によって運用されるリンクされたネットワークからなるインターネットなどの公的にアクセス可能なネットワークとすることができ、CDDシステム140は、ネットワーク100を介して任意のユーザにまたは特定のユーザのみに利用可能である。他の実施形態では、ネットワーク100は、プライベートネットワーク、たとえば、特権を与えられていないユーザに全体的または部分的にアクセス可能でない会社または大学のネットワークでとすることができる。さらに他の実施形態では、ネットワーク100は、インターネットへおよび/またはインターネットからのアクセスを有する1つまたは複数のプライベートネットワークを含むことができる。したがって、示された実施形態におけるCDDシステム140は、1つまたは複数のコンピュータネットワーク100を介して様々なユーザをサポートするようにオンライン方式で実行されるが、他の実施形態では、代わりに、CDDシステム140のコピーは、たとえば、単一のユーザまたは関係付けられたユーザのグループ(たとえば、会社または他の組織)をサポートするために、たとえば、1つまたは複数のコンピュータネットワーク100は代わりに会社または他の組織の内部コンピュータネットワークである場合に、他の方式で実施されることができ、CDDシステムのそのようなコピーは、任意選択で、会社または他の組織の外部の他のユーザに利用可能でない。CDDシステム140のオンラインバージョン、および/またはCDDシステム140のローカルコピーバージョンは、いくつかの実施形態および状況では、たとえば、相互作用を行って判断モジュールおよび対応する自動化制御システムを生成し、ならびに/または様々な方式でそのような判断モジュールおよび対応する自動化制御システムを配置および実施するために、1つまたは複数のユーザがCDDシステムの様々な動作を利用するための様々な利用料を提供するような、利用料ベースの方式で動作することができる。加えて、CDDシステム140、CDDシステム140、そのコンポーネントの各々(1つもしくは複数のCDD制御アクション決定コンポーネントおよび/または1つもしくは複数のCDD調整制御管理コンポーネントなど、コンポーネント142および任意選択の他のコンポーネント117を含む)、判断モジュールの各々、ならびに/または自動化制御システムの各々は、ソフトウェア命令を含むことができ、ソフトウェア命令は、1つまたは複数のコンピューティングシステム(図示せず)上で1つまたは複数のプロセッサ(図示せず)によって実行されて、たとえば、それらのプロセッサおよびコンピューティングシステムを、それらのプログラムされた機能性を行うことに関して特化されたマシンとして動作するように構成する。
図1Bは、ターゲットシステムの協調分散制御を行うためのシステムが実施されることができる例示的環境を示すネットワーク図であり、具体的には図1Aに関して論じられた例を継続する。図1Bの例示的環境では、ターゲットシステム1 160がやはり示されており、(初期バージョンであるか改訂されたバージョンであるかに関わらず)自動化制御システム122が、ここで、ターゲットシステム1 160を能動的に制御するのに使用するために配置および実施されている。図1Bの例では、判断モジュール124は、個別判断モジュール124a、124bなどから124nまでとして表され、ターゲットシステム1 160に対してローカルで、および/または1つもしくは複数の介在コンピュータネットワーク(図示せず)を介してリモート方式で実行していることができる。示された例では、判断モジュール124の各々は、CDD制御アクション決定コンポーネント144のローカルコピーを含み、たとえば、コンポーネント144aがそのローカル判断モジュール124aをサポートし、コンポーネント144bがそのローカル判断モジュール124bをサポートし、コンポーネント144nがそのローカル判断モジュール124nをサポートする。同様に、様々な判断モジュール124のアクションが、示された実施形態においてピアツーピア方式で調整および同期され、判断モジュール124の各々は、そのような同期を行うためのCDD調整制御管理コンポーネント146のコピーを含み、コンポーネント146aはそのローカル判断モジュール124aをサポートし、コンポーネント146bはそのローカル判断モジュール124bをサポートし、コンポーネント146nはそのローカル判断モジュール124nをサポートする。
判断モジュール124および自動化制御システム122が実行されると、判断モジュール124間の様々な相互作用175が行われ、たとえば、様々な判断モジュール間の協調および調整を可能にするために、判断モジュールの現在のモデルおよび他の状態に関する情報を共有し、それにより、たとえば、特定の判断モジュールが、1つまたは複数の他の判断モジュールに関して部分的に同期されたコンセンサス方式で(いくつかの状況では、すべての判断モジュール124のコンセンサスアクションが収束する完全に同期された方式で)動作する。判断モジュール124および自動化制御システム122の動作中に、様々な状態情報143が、ターゲットシステム160から自動化制御システム122によって取得されることができ、様々な状態情報143は、初期状態情報および経時的に変化する状態情報などであり、判断モジュール124によって行われた制御アクションからのターゲットシステム1における出力または他の結果を含む。そのような状態情報は、たとえば、収集され、使用する追加のソフトルールの後続の自動化された学習のために収集され使用されてよく、たとえば、ターゲットシステムの改訂されたモデルに含めるように追加のソフトルールを自動的に学習することによって、そのような初期ルールベースシステムモデルを改善するために、データトモグラフコンポーネントによって使用されるが、そのような動作は図1Bには示されない。
この例におけるターゲットシステム1は、自動化制御システム122が操作することができる様々な制御要素161を含み、この例では、各判断モジュール124は、それが操作する1つまたは複数の制御要素161からなる別個のグループを有することができる(したがって、判断モジュールA124aは、相互作用169aを行って制御要素A161aに対して制御アクションA147aを行い、判断モジュールB124bは、相互作用169bを行って制御要素B161bに対して制御アクションB147bを行い、判断モジュールN124nは、相互作用169nを行って制御要素N161nに対して制御アクションN147nを行う)。そのような制御アクションは、ターゲットシステム1の他の要素の内部状態163に影響し、任意選択で、1つもしくは複数の出力162を引き起こすまたは1つもしくは複数の出力162に影響を与えることを含む。ターゲットシステム1の動作が進行中に、内部状態情報163の少なくとも一部が、判断モジュールの一部または全部に提供されて、それらの進行中の制御アクションに影響を与え、判断モジュール124aないし124nの各々は、この例では、場合によっては、状態情報143aないし143nの別個のセットをそれぞれ有する。
他の箇所でより詳細に論じられるように、各判断モジュール124は、そのような状態情報143、およびターゲットシステムに関する判断モジュールのローカルモデル145を使用して、たとえば複数の時間期間の各々について、次に行う特定の制御アクション147を決定することができるが、他の実施形態および状況では、特定の自動化制御システムは、1つの時間期間のみ、またはいくつかの時間期間のみに、特定のターゲットシステムと相互作用を行うことができる。たとえば、判断モジュール124のためのローカルCDD制御アクション決定コンポーネント144は、その判断モジュールのローカルモデル145についての最適に近いローカル解を決定することができ、ローカルCDD調整制御管理コンポーネント146は、そのような決定されたローカルおよび/または同期解に基づいて判断モジュールのローカルモデル145を更新することを含めて、他の判断モジュール124を反映するように同期されたコンセンサス解を決定する。したがって、自動化制御システム122の実行中、自動化制御システムは、状態情報を要求し、ターゲットシステム160の制御要素161の値を修正しまたは他の形で制御要素161を操作する命令を提供することを含めて、ターゲットシステム160との様々な相互作用を行う。たとえば、複数の時間期間の各々において、判断モジュール124aは、ターゲットシステムの1つまたは複数の制御要素161aと1つまたは複数の相互作用169aを行うことができ、同様に、判断モジュール124bは、1つまたは複数の別の制御要素B161bと1つまたは複数の相互作用169bを行うことができ、判断モジュール124nは、ターゲットシステム160の1つまたは複数の制御要素N161nと1つまたは複数の相互作用169nを行うことができる。他の実施形態および状況では、少なくともいくつかの制御要素は、各時間期間中に制御アクションを行わなくてよい。
例示的ターゲットシステム2 170は図1Bに示されずに、参照目的で自動化制御システム126の判断モジュール128についてさらなる詳細が示されるが、そのような判断モジュール128は、典型的には、ターゲットシステム1を制御する判断モジュール124と一緒に実施されない。具体的には、自動化制御システム126の配置されたコピーは、この例では単一の実行中の判断モジュール128を含むが、他の実施形態では、自動化制御システム126は、他のコンポーネントおよび機能性を含むことができる。加えて、自動化制御システム126に対して単一の判断モジュール128が実施されるので、判断モジュール128は、ローカルCDD制御アクション決定コンポーネント184を含むが、示された実施形態では、同期および相互作用する他の判断モジュールが存在しないので、ローカルCDD調整制御管理コンポーネントをまったく含まない。
図1Aおよび図1Bには示されていないが、たとえば122の自動化制御システムの動作の分散された性質は、自動化制御システム122が使用されている間に、判断モジュール124のグループに対する修正が時間経過につれて修正されるのを可能にすることを含めて、様々な判断モジュールの部分的に分離された動作を可能にして、たとえば、新しい判断モジュール124を追加し、および/または既存の判断モジュール124を除去する。同様に、特定の判断モジュール124および/または128に対する変更が行われることができ、たとえば、時間経過につれて、特定の判断モジュールに固有のルールもしくは他の制約を変更し、および/または特定の判断モジュールに固有の目標を変更し、新しい対応するモデルが、そのような判断モジュール内で生成および配置され、いくつかの実施形態および状況では、対応する自動化制御システムが対応するターゲットシステムの制御動作を継続しながら、そのようにされる。一例として、少なくともいくつかのそのような修正が、1つまたは複数のデータトモグラフコンポーネントの動作を反映して、1つまたは複数の時間においてターゲットシステムモデル(または特定の制御要素についてのモデル)を改善することができ、(自動的であるか追加のユーザ命令または相互作用に応答するかに関わらず)追加される1つまたは複数のソフトルールを自動的に学習して、続いて配置される改善されたターゲットシステムモデルを作成することを含む。また、図1Aおよび図1Bの例では、各自動化制御システムは単一のターゲットシステムを制御するものとして説明されているが、他の実施形態および状況では、他の構成が使用されることができ、たとえば、単一の自動化制御システムが複数のターゲットシステム(たとえば、複数の相互に関係付けられたターゲットシステム、同じ種類の複数のターゲットシステムなど)を制御し、および/または、たとえば、各々がそのターゲット制御システムの異なる部分を制御するように独立して動作することによって、複数の自動化制御システムが単一のターゲットシステムを制御するように動作することができる。同様に、他の実施形態および状況において他の構成が使用されることができることが理解される。
電力を貯蔵および提供するために使用される1つまたは複数のバッテリを含む物理ターゲットシステムに関わる状況において、ターゲットシステムを制御するための自動化された動作は、各バッテリの状態の特性を使用して、バッテリから提供されるDC(直流)電力の自動化制御を行うことを含むことができ、たとえば、バッテリに接続されたDC−DCコンバータ(たとえば、電界効果トランジスタ、FET、または増幅器)を使用して、バッテリから出力される電流および/または電圧の量を、リアルタイム方式でバッテリの長期動作を最適化するように制御することによって、自動化制御を行う。DC−DCコンバータは、たとえば、その入力(供給)からその出力(負荷)への電流を逓増しながら電圧を逓減する降圧コンバータ(またはステップダウンコンバータ)の一部、および/またはその入力(供給)からその出力(負荷)への電流を逓減しながら電圧を逓増する昇圧コンバータ(またはステップアップコンバータ)の一部とすることができ、これらは、本明細書では一般に「昇圧/降圧コントローラ」または「降圧/昇圧コントローラ」と呼ばれることがある。加えて、いくつかの実施形態および状況では、複数のバッテリが、複数の制御モジュールを使用することによって制御されることができ、各制御モジュールはバッテリのうちの1つに関連付けられ、複数のバッテリに対する複数の関連付けられた制御モジュールの間の相互作用に基づくなどして分散された方式で複数のバッテリの全体的制御が調整される。制御される1つまたは複数のバッテリを含むシステムは、いくつかの実施形態および状況において、1つもしくは複数の電源および/または1つもしくは複数の電気負荷のような追加のコンポーネントをさらに含むことができ、そのような種類のシステムの非限定的例は、発電源(たとえば、ソーラーパネル、風力タービンなど)および住宅または企業からの電気負荷を任意選択で含むことができる、1つまたは複数の家庭またはビジネス電力システムである。
図2Aは、バッテリの状態の特性を他の関係付けられた情報と共に使用してバッテリからのDC電力の自動化制御を行うためのシステムの実施形態の例示的コンポーネントを示すブロック図200Aを含み、具体的には、さらに後述されるように、例示的システム200Aの様々なコンポーネントが、定義された制約条件、ルール、および他の基準に照らして1つまたは複数の定義された目標に従ってバッテリの動作を制御するように相互作用する。いくつかの実施形態では、バッテリを制御するための自動化されたアクティビティが、電力を求める外部要求(たとえば、バッテリが電力を1つもしくは複数の対応する負荷290を介して供給できる先のユーティリティ260からの要求)のできる限り多く(たとえば、そのような要求のうちの少なくとも定義されたパーセンテージまたは量)を満たしながら、リアルタイム方式で、および/またはバッテリの長期動作(たとえば、バッテリの寿命)を最適化するように行われることができる。具体的には、データトモグラフコンポーネントは、図2Cないし図2Jの例に関連してより詳細に論じられるように、そのようなシステム200Aと共に更新された改善された制御エージェント(本明細書では、CDIエージェントまたはCDD判断モジュールもしくはシステムと呼ばれることがある)を生成し使用するために使用されてよい。
図2Aの示された例では、バッテリ210が示されており、バッテリ210は、バッテリコントローラコンポーネント240(本明細書では、「追跡コントローラ」および/または「バッテリ追跡コントローラ」と呼ばれることもある)から対応する制御信号を受け取るアクチュエータ230を介して制御され、たとえば、バッテリコントローラがバッテリのDC出力として生成されるべき電力の量を指定することによって制御される。生成されるべき指定された電力量は、たとえば、出力される電力を指定された量だけ増加もしくは減少すること、または電力出力を変更しないことを示す情報を含むことができる。バッテリの出力は、電力を1つまたは複数の負荷290に提供する働きをすることができ、少なくともいくつかの実施形態では、バッテリの電力出力をAC電力に変換して対応する負荷をサポートするためにインバータ/整流器コンポーネント(図示せず)に接続されることができ、そのようなインバータは、たとえば、AC電力の電圧および/または周波数を調節することによってバッテリから提供される電力を制御することができる。同様に、バッテリの入力は、1つまたは複数の電源290から電力を受け取る働きをすることができ、少なくともいくつかの実施形態では、電源からのAC電力入力をバッテリ用にDC電力に変換するためにインバータ/整流器コンポーネント(図示せず)に接続されることができ、そのような整流器は、たとえば、AC電力の電圧および/または周波数を調節することによってバッテリに提供される電力を制御することができる。
どのようにバッテリを制御するかを決定することの一部として、バッテリコントローラコンポーネント240は、バッテリの内部状態(図示せず)、たとえば、電圧、電流、温度などの現在の値に関して、1つまたは複数のハードウェアセンサモジュール220から入力を受け取り、対応する情報を初期制御エージェント250Aに供給する。この例では、バッテリコントローラコンポーネントが関連する情報を制御エージェント250Aに提供するように示されているが、他の実施形態では、制御エージェント250Aは、一部または全部のそのような情報を他の方式で、たとえばセンサモジュールから直接、取得してよい。制御エージェントは、バッテリの状態に関係付けられたバッテリコントローラからの情報を受け取り、また、ユーティリティによって制御される電気グリッド(図示せず)に対してバッテリが電力を時々または常に供給する状況などにおいて、ユーティリティコンポーネント260からの電力供給要求を受け取る。具体的には、制御エージェントは、ユーティリティから特定の要求を受け取り、バッテリの状態に関する情報を受け取って分析し、バッテリについて現在の時間に行う対応する動作(たとえば、バッテリから供給される出力電力の量、および/またはバッテリによって受け取られ貯蔵される入力電力の量)を決定し、少なくともいくつかの状況では、(たとえば、バッテリの推定された内部温度および/またはバッテリの推定された内部の化学的性質に関して)所望の非飽和範囲またはレベルでバッテリが動作することを可能にすることなどのために、バッテリの現在の状態および定義された目標を所与としてバッテリ性能に対する他の制約条件も満たすように要求が満足できる場合、リアルタイム方式で電力に関するユーティリティからの要求を完全または部分的に満たすように試みることを伴う。バッテリについて現在の時間に行う対応する動作を決定した後、制御エージェントは、対応する追跡制御信号をバッテリコントローラに提供し、バッテリコントローラは、追跡制御信号の対応する動作をもたらすためにアクチュエータを現在どのように修正または操作するか(たとえば、バッテリから出力される電力の量について行う正または負の変更の量)を決定し、上述されたように対応する制御信号をアクチュエータに送る。
図2Aには示されていないが、制御エージェントおよび/またはバッテリコントローラは、いくつかの実施形態では、バッテリの内部状態を推定し、その内部状態に少なくとも一部基づいて行う特定の動作を選択するために使用される、バッテリの記憶されたモデルを含んでよく、それは、図2Cないし図2Jに関連して以下により詳細に論じられるように、使用するソフトルールを学習するためにトモグラフコンポーネントのアクションに基づいて後で更新されてよい。たとえば、いくつかの実施形態では、任意の種類のバッテリに適用可能な汎用バッテリモデルが使用されることができ、他の実施形態では、バッテリの種類(たとえば、リチウムイオンまたはニッケルカドミウムなど、電気を貯蔵および/または生成するために使用される化学反応の種類)に固有のバッテリモデルが使用されることができ、さらに他の実施形態では、使用中の特定のバッテリ専用に設計および/または構成されたバッテリモデルが使用されることができる。そして、特定のバッテリを有する特定のシステムで初期に採用されたそのようなバッテリモデルが、時間経過につれて更新されて、たとえば、使用するソフトルールを学習するためにトモグラフのアクションに少なくとも一部基づいて、(たとえば、観測可能なバッテリ状態の変化が、対応する外部バッテリ電気負荷および/または電源にどのように相関するかを監視することによって、)モデルの基礎となる構造に改善を反映すること、ならびに/またはモデルをトレーニングして使用中の特定のバッテリおよび/もしくはシステムに固有の動作特性を反映することなどができ、特定のバッテリおよび/またはシステムに対してモデルをトレーニングしまたは他の形で適合させるとき、トレーニング/適合動作は、いくつかの実施形態では、自動化制御システムを使用してバッテリを制御する前に初期にトレーニングフェーズで行われることができ、および/または、いくつかの実施形態では、(たとえば、バッテリのインピーダンスプロファイルの経時的変化を反映するために、)自動化制御システムがバッテリを制御している間に継続的または定期的に行われることができる。そのようなモデルの構築および使用を含むモデルに関する追加の詳細は、本明細書の他の箇所に含まれる。加えて、いくつかの実施形態では、バッテリコントローラおよび制御エージェントは、別個のコンポーネントとして実施されることができ(たとえば、バッテリコントローラは、バッテリに取り付けられまたは他の形式でバッテリの位置にあるハードウェアおよび/またはファームウェアに全体としてまたは一部に実施され、制御エージェントは、バッテリ位置から遠隔の1つまたは複数のコンピューティングシステム上で実行され任意選択で1つまたは複数の介在コンピュータネットワークを介してバッテリコントローラと通信するソフトウェア命令によって、一部に実施される)、他の実施形態では、制御エージェントおよびバッテリコントローラは、(バッテリの位置にあるかそれから離れているかに関わらず)単一のコンポーネントとして実施されることができる。同様に、いくつかの実施形態では、データトモグラフコンポーネントおよび制御エージェントは、別個のコンポーネントとして実施される(たとえば、データトモグラフコンポーネントは、バッテリの位置に全体としてまたは一部、および/または遠隔位置に全体としてまたは一部実施される)ことができ、他の実施形態では、制御エージェントおよびトモグラフコンポーネントは、(バッテリの位置にあるかそれから離れているかに関わらず)単一のコンポーネントとして実施されることができる。バッテリについて行う動作を決定するための制御エージェントの動作に関するさらなる詳細は、以下により詳細に論じられる。
加えて、図2Aに関連して示されていないが、いくつかの実施形態では、複数のバッテリ(たとえば、数十、数百、数千、数百万など)の各々が、同様にそのバッテリのアクションを制御する関連付けられた制御エージェントを有することができ、様々なバッテリが、ユーティリティまたは他のエンティティに集合的電力を供給するために調整された方式で一緒に動作する。そのような実施形態では、ユーティリティまたは他の外部エンティティは、バッテリを含む様々なシステムによって使用するための同期および監視信号を送ることができ、様々なバッテリに関連付けられた複数の制御エージェントが、相互作用して情報を交換し、バッテリの動作間の少なくとも部分的調整を維持することができる。
少なくともいくつかの実施形態では、ターゲットシステムの状態の初期のモデル化は、1つまたは複数のデータハミルトン関数を使用して行われ、説明されている技法は、トモグラフィ技法を使用して、1つまたは複数の種類のセンサデータの分析に基づいて(たとえば、基礎となるハミルトニアンベースのモデルを完成するために)データハミルトン関数を修復または他の形で改善することを含む。そのようなターゲットシステムを制御しているCDDシステムは、少なくともいくつかの実施形態および状況では、複数のCDI制御エージェントを実施して、平均場ハミルトニアン手法を介して同期してエージェントベースのネットワークを通じて制御および管理を分配し、たとえば、各エージェントは、ターゲットシステムにおける1つまたは複数の対応するコンポーネントのダイナミクスおよび相互作用を定義するデータハミルトニアンによって特徴付けられ、エージェントのそのような各データハミルトニアンは、感知データおよびアクションから動的に計算される。そのような(単一のターゲットシステムコンポーネント用の)データハミルトニアンおよび/または(複数の調整されたターゲットシステムコンポーネント用の)平均場ハミルトニアンは、履歴、現在の状況、および可能なオプションをモデル化することを含めて、可能な結果のスペクトルを定義することによって、膨大な量の情報を通じて問い合わせをナビゲートするのを助ける数学関数であると考えられる。そのような技法を使用する非限定的な例示的実施形態が本明細書にさらに説明されるが、他の実施形態では、1つまたは複数の方式に関してこれらの例示的実施形態とは異なってよいことは理解されよう。
データハミルトニアンは、データドメインのフローおよび相互依存を捕捉する関数として実施されてよく、3つの種類の変数(たとえば、状態変数、フロー変数、および判断または制御変数)を含んでよい。CDI制御エージェントは、マルチデータドメインに属するデータドメインにおいて動作する最適化ベースの推論エンジンとして実施されてよく、エージェント最適化機能性がエージェントのハミルトニアンに符号化される。CDDシステムは、リアルタイムで分散エージェントベースドメインからの時間ベースの問い合わせを解決するための形式的な分散推論ルールベース最適化プロセスとして実施されてよい。CDDシステムのCDI制御エージェントは、以下の3つの種類のホーン節ルールを使用して実施されてよく、すなわち、制御されている物理ターゲットシステムの物理を特徴付け(または、他の種類のターゲットシステムにおける変更不可能なルールを他の形式で記述する)任意のハミルトニアンの実現において真理値を真と等しくする(たとえば、偽に対して0の値または真に対して1の値)絶対的ルールと、望ましい挙動および目標を特徴付け、任意のハミルトニアンの実現において真理値を真と等しくする(たとえば、偽に対して0の値または真に対して1の値)ハードルールと、動作、ヒューリスティック戦略、経済配分、異常に対する応答、学習戦略の経験的知識を特徴付け、[0,1]における可変の確率的真理値、および実施形態によってはその可変の確率的真理値に対する関連付けられた信頼値を有するソフトルールとを使用して実施されてよい。メタルールは、感知データおよび望ましい挙動を制約データハミルトニアンに変換するために使用される特別な類のソフトルールである。ソフトルールは、任意の所与の問い合わせに関連するデータのエリアを識別する手段として、「勾配」(真でも偽でもない情報)を通じて問い合わせをナビゲートするために使用されると考えられる。したがって、CDI制御エージェントに関するそのようなルールは、エージェントについてのデータハミルトニアンに対する制約条件を定義し、対応するCDDシステムが解決する制約最適化問題に変換されてよい。たとえば、そのような変換は、真理値{0,1}を[0,1]区間に変換すること、変数およびパラメータを連続変数およびパラメータに変換すること、絶対的ルールを等式制約に変換すること、ハードルールを等式制約に変換すること、ソフトルールを不等式制約に変換すること、操作対象集合を関数形式に変換すること、アルゴリズムを微分方程式に変換すること、を含むことができる。
さらに、上記されたように、一部または全部そのようなソフトルールは、少なくともいくつかの実施形態および状況では、特定のターゲットシステムについて1つまたは複数のデータトモグラフコンポーネントによって自動的に学習され、将来のターゲットシステムのより良い制御のためにターゲットシステムの以前のモデルを改善するために使用されてよい。そのように、図2Bがさらに情報200Bを含み、情報200Bは、図2Aの例において、初期制御エージェント250Aが、システム200Aに関する絶対的ルールおよびハードルール280を供給した1つまたは複数のユーザ285によって構築されたことを示す。いくつかの実施形態および状況では、初期制御エージェント250Aは、1つまたは複数のソース255からの情報、たとえば、履歴電力供給および需要ならびに/または気象データを、ユーザ285のアクションによって取り込まれたか自動的に初期制御エージェント250Aに含まれたかに関わらず、さらに含むことができる。
さらに、図2Cは、初期制御エージェント250Aの使用が、バッテリ210の実際の動作を反映するデータモデル245を構築するために、様々な情報235を収集するために使用できること200Cを示す。そのような情報235は、この例では、1つまたは複数のセンサモジュール220からのセンサモジュールデータ、バッテリ200の動作を影響するためにアクチュエータ230を介して供給された制御信号情報および/または結果のアクション、1つまたは複数の電源および/または負荷290からバッテリ210へまたはバッテリ210からの結果の電力入力および/または出力などを含む。
図2Cの情報235およびデータモデル245が収集された後、図2Dは、バッテリ210についての更新された改善された制御エージェント250Dを作成するためのデータトモグラフコンポーネント270の動作に関するさらなる情報200Dを示す。具体的には、図1Cおよび本明細書の他の箇所に関連してより詳細に論じられるように、トモグラフ270は、データモデル245を使用して、バッテリ210の実際の動作と初期制御エージェントに対して使用される絶対的ルールおよびハードルールによって予想された動作との差異を決定して、それらの差異を反映する新しい(または修正された)ソフトルールを生成する。次いで、その生成されたソフトルール情報は、初期制御エージェントを更新して、改善された更新された制御エージェント250Dを作成するために使用される。
次に、図2Eは、修正されたバージョンのシステム200Eを示し、ここでは、更新された制御エージェント250Dが初期制御エージェントの代わりに使用されて、システム200Eのバッテリおよび他の要素のさらなる動作を制御する。図2Dにおけるトモグラフコンポーネントの動作は、いくつかの実施形態および状況では、一度のみ実行されて、たとえば、1つまたは複数のユーザ285によって供給されなかったソフトルールを学習することができるが、他の実施形態では、トモグラフコンポーネントは、同様の方式で、複数回(たとえば、定期的、連続的、または実質的に連続的になど)使用されて、たとえば、時間経過と共に制御エージェントを改善するように継続することができる(たとえば、時間経過と共にシステムに発生する変化に制御エージェントを構造的に適合させ、そのような変化は、たとえば、1つまたは複数の負荷の追加および/または除去および/または修正、1つまたは複数の電源の追加および/または除去および/または修正、バッテリ210の内部状態および動作特性の変化、1つまたは複数の他の要素220または230または240または260の変化などである)。そのように、図2Fは、図2Eの修正されたバージョンであり、ここでは、図2Fのシステム200Fが、1つまたは複数の追加の時間において制御エージェント250Dをさらに更新するのに使用するために、トモグラフコンポーネント270を含む。上記されたように、追加のデータソース要素255は提供され続け、1つまたは複数の種類のセンサ情報(たとえば、過去および/または現在の気象データ、過去および/または現在の価格データ、電力供給および/または需要に関する過去および/または現在のデータ、センサモジュール210からの電流および電圧および内部温度データ、バッテリ210を制御するために入力として使用される追跡および/または制御信号に関する情報など)を、トモグラフコンポーネント270がその動作の一部として取得および使用することを可能にすることができる。
図2Gないし図2Jは、図2Aないし図2Fに示されたターゲットシステムの動作に、およびターゲットシステムのための制御エージェントを改善する際のトモグラフコンポーネント270のアクションに関係付けられた、さらなる例示的データを提供する。
具体的には、図2Gは、図2Cに関連して論じられたデータ235の一部を反映するような、例示的データ290を示す。データ290は、表として示されており、各行は、異なる時間292eに対応し、様々な列292aないし292dは、各時間についての様々なセンサデータおよび制御信号/アクション情報を示し、他の列292uないし292wは、各時間についての様々なシステム出力または結果情報を示す。データは、例のために簡略化されており、示された例示的データに加えてまたはその代わりに、他の実施形態において様々な他の種類のデータが収集および使用されてよいことは理解されよう。図2Hは、ターゲットシステムと共に使用するための例示的な絶対的ルールおよびハードルールを示すための情報296を含み、それらのルールは、たとえば、ユーザ285によって提供されたルール280のいくつかに対応する。この例では、各ルールは、示された条件を満たす示されたセンサ値に応じて真または偽として評価される。たとえば、第1の2つの示されたルールに関して、それらは、Internal_Tempセンサの値が最大温度閾値より小さいかまたは最小温度閾値より大きいかをそれぞれ調べるための示された条件を有する。したがって、(表290の行294−1に対応する)時間E1について、Internal_Temp値A1がTempmaxより小さいがTempminより大きくない場合、第1のルールは真と評価され、第2のルールは偽と評価されることになる。図2Iは、1つまたは複数のソフトルールを決定するためにトモグラフコンポーネント270が行うことができる例示的問い合わせを示すための情報297を含み、たとえば、1つまたは複数の示されたセンサに関して異なるセットの1つまたは複数の入力値を用いてVoltage_In/Outの値に関する3つ以上の問い合わせをすることによって行う。第4の示された問い合わせは、異なる形式のものであり、1つまたは複数の示されたセンサに関して示されたセットの1つまたは複数の入力値を用いてPower_In/Outの値に関するはいまたはいいえの回答という結果を得る。図2Jは、たとえば更新された制御エージェント250Dの一部として使用するために、トモグラフコンポーネント270がターゲットシステムについて学習することができる2つのソフトルールの例を提供するための情報298を含む。第1の学習されたソフトルールは、確率Qによって表現された関連付けられた信頼水準を伴う、バッテリの経過時間とVoltage_In/Out値の学習された関係に対応し、第2の学習されたソフトルールは、確率Nによって表現された関連付けられた信頼水準を伴う、期待されるバッテリ寿命の学習された変化に対応する。図2Aないし図2Jは本発明の範囲を限定するように意図されることなく例示目的で提供されていることは理解されよう。
図2Kはブロック図200Kを含み、ブロック図200Kは、たとえば、トモグラフコンポーネント270が制御エージェントにおいて使用するためのソフトルールを自動的に学習した後に、CDI制御エージェント250Jによって自動的に制御されている別のターゲットシステムの実施形態の例示的コンポーネントを示す。この例では、制御エージェント250Jは、自動化された動作を行って、1つまたは複数のHVACユニット272を介して建物271の暖房および/または冷房を制御して、たとえば、制御エージェントにおいて表現された定義された制約条件、ルール、および他の基準に照らして1つまたは複数の定義された目標を満たす。いくつかの実施形態では、HVACユニットを制御するための自動化されたアクティビティは、(たとえば、温度範囲内で、利用者に供給された動的要求に応じて特定の時間に特定の部屋の温度を上昇または低下させるように)1つまたは複数の定義された基準に従って建物の一部または全部の部屋の暖房および/または冷房を維持しながら、リアルタイム方式でならびに/または暖房および/もしくは冷房アクティビティのコストを最適化するように行われることができる。
図2Kの示された例では、建物は複数の階274を有し、各階は複数の部屋275を有する。いくつかの部屋は、その部屋の温度を提供するための温度センサ276を有し、(同じ部屋か異なる部屋かに関わらず)いくつかの部屋は、利用者に選択可能な命令ボックス277であって、それらの命令ボックス277に関連付けられた1つまたは複数の部屋の暖房および/または冷房を要求するための命令ボックス277を有することができる。制御エージェント250Jおよび/またはトモグラフ270は、ターゲットシステムのためのセンサ(たとえば、室内温度センサ276、1つまたは複数の外部温度センサ、HVACユニット272および/または建物用の電力供給273の動作に関連付けられたセンサなど)からの情報、制御エージェント250JからHVACユニット272および/または電力供給273に供給される制御信号情報、ターゲットシステム動作の出力または結果に関する他の情報などを受け取り、他方で、制御エージェントは、この例では、HVACユニットおよび/または電力供給に命令を直接提供するように示されているが、他の実施形態では、制御エージェントは、そうではなく、1つまたは複数の中間システム(たとえばスマート建物管理システム)に制御命令を提供することができる。図2Aないし図2Jに関して説明されたのと同様のアクティビティが、ターゲットシステム200Kについて同様に行われることができるが、そのような詳細は簡潔にするために示されていないことは理解されよう。
少なくともいくつかの実施形態におけるトモグラフコンポーネントの動作に関する追加の例示的詳細は以下の通りであるが、いくつかの実施形態では他の方式でトモグラフィ技法を行ってよいことは理解されよう。
以下の方程式は、図1Gの図199に示されるようなターゲットシステムのためのk番目のセンサに対応し、代数的に解かれ、1つのセンサ上で一度反復され、システムのハミルトニアンの近似を取得する。
Figure 0006626224
k=1,…,n
ただし、Ykは、k番目のセンサに関連付けられた信号である
Figure 0006626224
は、i番目のエージェントのトモグラフによるデータトモグラフ推定値である
各エージェントiのルールハミルトニアンは、以下のように絶対的ルール、ハードルール、およびソフトルールを含む:
Figure 0006626224
ハミルトニアンHRが完備である場合、以下のようになる:
Figure 0006626224
Figure 0006626224
2が満たされない場合、
[φj,HR]≠0
である。そして、HRが完備でない場合、その完備化は、感知信号、およびトモグラフダイナミクスを介する他のエージェントからのデータから、修復プロセスによって決定される必要がある。
補題:ドメイン(たとえばSBIR)が、ルールのセット{ri(x,p,u),i=1,…,n}に対応するポテンシャルのセット{φi(x,p,u)=0,i=1,…,n}を特徴付けたとする。G(x,u)=0を問い合わせg(x,u)に関連付けられたポテンシャルとする。
すると、以下の場合かつその場合に限り、{ri(x,p,u),i=1,…,n}に関してgの解決を求めることができる:
Figure 0006626224
(ポテンシャルの凸結合=問い合わせ)
ただし、{gi(x,p,u)=0,i=1,…,n}は、ドメイン変数の連続微分可能関数である。
解決は、ドメインのルールを満たす問い合わせにおける変数の値のセットである。
定理1
完備化されたハミルトニアンは、以下のトモグラフィ条件を満たさなければならない:
[φj,HR]+[φj,HT]=0 j=1,…,n nはアクティブなルールの数
ただし、
Tはトモグラフィ完備化であり、
Figure 0006626224
かつ、[φj,HR+HT]=0, j=1,…,n
上記の定理は、感知データについての構造的適合要件を提供する。トモグラフィ条件から、構造的可観測性条件が、十分な感知情報が利用可能であるように導出されることができる。
k(t)を、k番目のセンサによって生成されたベクトルセンサ信号であるとして、
k(t)=Ψk(t,x,p)であり、ここでΨkはセンサのモデルである。
定理2
R+HTは、センサ完備化トモグラフィ条件
Figure 0006626224
を、各エージェントiのすべてのセンサk(k=1,…,Ki)について同時に満たさなければならない。

構造的可観測性が、HTの一意解に対応する。
一般に、構造的可観測性は、緩和された意味のみで、たとえば最小の最小二乗(minimum least squares)で達成される。
一般に、トモグラフィ方程式の収束の質および速さは、独立した感知信号の数と共に増大する。トモグラフを実施するためのアルゴリズムは、逆モデル法の適用に基づく。
k(t)を、k番目のセンサによって生成されたベクトルセンサ信号であるとして、
k(t)=Ψk(t,x,p)であり、ここで、Ψkはセンサのモデルであり、HT,kがそのハミルトニアン形式
Figure 0006626224
である。
定理3
Figure 0006626224
が、最初のk−1個のセンサについて「ラウンドロビン条件」k=0modL(L=センサの数)でセンサ完備化トモグラフィ条件を満たすとすると、k番目の完備化が、各センサk,k=0modLについて
Figure 0006626224
Figure 0006626224
を満たす。
定理3の反復手順は、Segal、Dirac手順で代数的に実施されることができる。
k(t)を、k番目のセンサによって生成されたベクトルセンサ信号であるとして、
k(t)=Ψk(t,x,p)であり、ここでΨkはセンサのモデルである。
定理4
Figure 0006626224
が、最初のk−1個のセンサについて「ラウンドロビン条件」k=0modL(L=センサの数)でセンサ完備化トモグラフィ条件を満たすとすると、k番目の完備化が、各センサk,k=0modLについて
Figure 0006626224
を満たし、ここで、
Figure 0006626224
は、センサによって導入されたエントロピを最小にする、センサkのハミルトニアンである。
少なくともいくつかの実施形態におけるトモグラフコンポーネントの動作に関するさらなる例示的詳細は以下の通りである。
本明細書に説明されているデータトモグラフコンポーネントの動作および機能性は、イメージング(たとえば、X線、MRIなど)で使用されるトモグラフ手法に類比されることができる。例として、(手術のための)膝の画像を構築することを考える。いくつかの信号またはプローブが膝を通され、各信号に関連付けられた密度情報から画像が再構築される。本明細書に説明されているデータトモグラフコンポーネントでは、情報を取得するために問い合わせが送出され、問い合わせの結果が、調査中のターゲットシステムについてデータハミルトン関数(単に「ハミルトニアン」とも呼ばれる)を構築するために使用される。たとえば、1つの問い合わせは、何人の男性が膝に痛みを経験したかであってよく、別の問い合わせは、膝の手術を受けた患者の年齢であってよく、別の問い合わせは、回復時間に関してであってよい。構築されたデータハミルトニアンは、膝の画像が局所的であるのと同様に関心領域に対して局所的であり、肩または臀部または体の他の部位に関する情報を提供しない。いくつかの状況では、データ全体に対する大域的ハミルトニアンが存在しないが、問い合わせを参照して局所的ハミルトニアンが構築されることができる。
説明されているデータハミルトニアンの作成および学習は、少なくともいくつかの実施形態では、帰納的戦略と演繹的戦略を組み合わせる。演繹的戦略は、強い意味で有効なデータの性質を前提とし、それらは、論理ルール(バイナリ真/偽ルール)としてこれらの性質を特徴付ける。これらの論理ルールは、2つの種類があり、すなわち、データにおいて一般に有効であるものを特徴付ける絶対的ルールと、データから望ましい情報を抽出するための特定の方法を特徴付ける論理ルールであるハードルールとがある。これらのルールは、歴史的に有効であり、初期ハミルトニアンを構築するために使用されることができる。
機能的戦略は、完全に偽(0)と完全に真(1)との間の真理評価を有するルールのセットによって特徴付けられる。これらは、[0,1]区間内の値を有するソフトルールと呼ばれる。ソフトルールは、閾値と呼ばれるデータに依存する追加の要素を有してよい。閾値は、問い合わせの真理評価を決定するルールに関連付けられたデータの関数である。絶対的ルールとハードルールの合成が、データハミルトニアンと呼ばれるデータ符号化構造を決定する。データハミルトニアンは、伝播メカニズム、陽性特性、正値性、データコンポーネント間の相関、単調性など、ハミルトニアン物理と多くの性質を共有する。データハミルトニアン構造は、データドメイン、データドメインにおけるデータの変動性(データモメンタム)、およびデータドメインの修正パラメータを特徴付ける変数の関数形式である。
異種データに関して、それは、(必ずしも互いに素でない)各データクラスについて別個のハミルトニアン構造を構築するために有用であることができ、平均場ハミルトニアン集約構造は、単一のデータ構造としてデータユニバースを特徴付けるために構築されてよい。
ソフトルールは、ハミルトニアン構造を構築する学習アルゴリズムを介してデータを抽出することによって学習され、このコンポーネントは、データトモグラフコンポーネントと呼ばれる。データトモグラフは、以下のように機能する。データについての与えられた問い合わせに関して、それは、初期の問い合わせに関連付けられた特定のデータクラスに対するプローブとして働く問い合わせのセットをまず生成することによって、回答(空の回答も候補である)を生成する。問い合わせおよび関連付けられた応答のセット(入力と出力の対)が、問い合わせのセットに対する応答から関数構造を構築(または更新)するために、データトモグラフによって使用される。ハミルトニアンに関連付けられた特定の問い合わせは、スプラインまたは区分多項式によって近似されてよい。データトモグラフは、特定の問い合わせ(または目標)に関連付けられたソフトルールを生成する。ソフトルールのみからアクセス可能なハミルトニアンの部分は、ソフトトモグラフと呼ばれる。
特定の態様のデータに関連付けられた全体的ハミルトニアンは、絶対的ルールから構築された絶対的ハミルトニアン、ハードルールから構築されたハードハミルトニアン、およびデータ抽出から構築されたソフトハミルトニアンを含む、そのクラスに対するデータハミルトニアンおよびルールベースのハミルトニアンの合計である。この全体的ハミルトニアンは、データクラスを特徴付ける。
データトモグラフの別の態様は、トモグラフによって生成された問い合わせが新しい情報を提供しているか、または十分な情報があって追加の問い合わせが必要とされないかを示す条件のセットである。条件が満たされたとき、ハミルトニアンは近い近似を提供し、それ以上のソフトルールが構築されない。条件がまだ満たされていないとき、特定の問い合わせに関連付けられたセンサ方程式を伝播し、特定のデータクラスについて必要に応じてさらなる入力/出力対を追加することによって、精緻化されまたは学習される。
ハミルトニアン構造におけるデータの符号化は、データの相互相関が重要な他の方法に対して利点を有する。1つのデータクラスおよび他のデータクラスからの相互相関は、クラスのデータハミルトニアンと他のクラスのハミルトニアンとの直接相関ではなく、クラスのハミルトニアンと平均場ハミルトニアンとの間の相互作用によって媒介される。この手法は、そのような相互相関についての多項式複雑度を提供する。相互相関回答の質は、相互相関計算(量子化エラー)に許容される反復エラーによってのみ決定される。これは、複数のデータクラスにわたる問い合わせの推論にも当てはまる。
説明されている技法は、低い複雑性の計算(二次多項式計算)を用いて、動的データ、高いレベルの不確実性を有するデータ、高次元データ、相互相関されたデータなどに適用可能である。
説明されている技法を用いた学習またはデータからの推論は、相対エントロピを最小にする回答に向かうデータの収束軌道を生成することに基づく。それは、データに対する問い合わせの変数の近似として値(数字またはその他)を割り当てることによってエントロピ低減の関数として回答を近似する。
多くの複雑なシステムの特性ダイナミクス、特に計算プロセス(アルゴリズム)を含むシステムは、従来の数学的制約条件を用いて容易にはモデル化されない。データトモグラフコンポーネントの使用は、感知データおよびルールに基づくシステムのダイナミクスの抽出を可能にし、それにより、システムが最適な方式で環境条件の変化を学習しそれに適合することをできるようにし、この適合は、本明細書では構造的適合と呼ばれることがある。
データトモグラフコンポーネント動作は、2つの方法で働く。第1に、それは感知信号をハミルトニアンに変換し、第2に、それは感知信号からルールを抽出し、そのルールは次いでシステムのハミルトニアンにおいて使用されることができる。トモグラフは、更新されたデータおよび更新されたルールに基づいてシステムのダイナミクスの構造的適合を提供する。ルールは、挙動を定量化することが可能なソフトルールである。このような方法で、トモグラフは、環境が変化するにつれてメタ制御方法論がハミルトニアンを学習および更新することを可能にする。逆の方法で、トモグラフは、ソフトルールを抽出してシステムに関する理解をそれが進展するにつれてユーザに提供することができる。トモグラフは、システムの構造を学習するリアルタイムシステム(構造的適合)であり、ソフトルールを発見および修正することができる。
感知データからルールを抽出するために、トモグラフは、目標に関連付けられたデータを「励起」させる。励起目標に関連付けられたセンサを介して観測されたドメインダイナミクスが、抽出された観測可能データを生成し、これは、既存の(知識ベース内の)ルールおよび新しいデータに関連付けられたハミルトニアンのプロパゲータを供給する。図1Cは、どのようにトモグラフがソフトルールを生成するかを示す。
図1Cのハミルトニアンプロパゲータは、励起センサ対に関連付けられたドメインの全体的ハミルトニアンを生成する。ルールおよび観測されたデータを含む全体的ハミルトニアンは、
T(x,p,u,t)
であり、プロパゲータによって生成される。それは、さらに2つのハミルトニアンに、すなわち、ルールベースのハミルトニアン
0(x,p,u,t)
および抽出されたデータに関連付けられたハミルトニアン
S(x,p,u,t)
に分解可能である。
したがって、ここで、
T(x,p,u,t)=H0(x,p,u,t)+HS(x,p,u,t)
を得られる。
しかしながら、トモグラフの目的のために以下のように書き直す:
S(x,p,u,t)=HT(x,p,u,t)−H0(x,p,u,t)
全体的ハミルトニアンおよびルールベースのハミルトニアンが分かっているので、抽出されたデータに関連付けられたハミルトニアンを決定する。ポテンシャルハミルトニアンは、ソフトルールを表現し、これは、
ln(Pk(t,x,p)−閾値)=HS(x,p,u,t)
を解くことによって、k番目のセンサによって測定されたデータに関連付けられた対応するソフトルール
Figure 0006626224
を取得することによって決定される。
データソースおよびルールを含むk番目のセンサモデルは図1Gに示されている。k番目のセンサは、アルゴリズム的な時間の関数としてデータにセンサ信号Yk(t,x,p)を生成させるために使用される励起に依存するルールのセットによって特徴付けられる。所与の励起によって生成された感知データのデータ履歴が、全体的ハミルトニアンプロパゲータ方程式を駆動する。
以下のプロパゲータは、システムの全体的ハミルトニアンについての双曲型方程式である:
Figure 0006626224
ここで、それはk番目のセンサ信号に関係し、k=1,…,nであり、Ykは、k番目のセンサに関連付けられた信号であり、
Figure 0006626224
は、i番目のエージェントのトモグラフによるデータトモグラフ推定値である。(リアルタイムで)解くと全体的ハミルトニアンの推定値が与えられる。状態および共状態軌道が、対応するハミルトン−ヤコビ方程式から生成される。各エージェントiのルールハミルトニアンは、以下のように絶対的ルール、ハードルール、およびソフトルールを含む:
Figure 0006626224
ここで、HA(x,p,u)は絶対的ルールのハミルトニアンであり、各ソフトルールは、そのポテンシャル関数φj(x,p,u)に符号化される。
励起が信号を生成しないため、または生成された信号が全体的ハミルトニアンと完全に適合しないため、与えられたセンサがそのハミルトニアンに対する修正を生成しない(すなわち、センサが新しい情報を提供しない)ことが可能である。信号が完全に適合する場合、ハミルトニアンが完備であるという。ルールハミルトニアンが完備である場合、以下の2つの条件が各ポテンシャルjについて満たされる。
(1) φj(x,p,u)=0,および
(2) [φj(x,p,u),HR(x,p,u)]=0
これらは、ルールポテンシャル条件でありポアソン括弧が以下によって与えられる:
Figure 0006626224
条件(2)が満たされない場合、すなわち、少なくとも1つのjについて[φj(x,p,u),HR(x,p,u)]≠0である場合、HRは完備でなく、その完備化は、感知信号およびダイナミクスを介する他のエージェントからのデータを使用する修復プロセスによって決定される必要がある。
修復プロセスが必要とされているかどうか、または現在のハミルトニアンが完備であるかを判断するために以下の条件が数値的にテスト可能である。
条件(3): ルールのセット{ri(x,p,u)=0,i=1,…,n}に対応するポテンシャルのセットφi(x,p,u)=0,i=1,…,nによって特徴付けられるドメインが与えられたとする。G(x,y)=0を、問い合わせg(x,u)に関連付けられたポテンシャルであるとする。すると、以下のようにポテンシャルの凸結合が問い合わせに等しい場合かつその場合に限り、ルールのセット{ri(x,p,u)=0,i=1,…,n}に関して問い合わせの解決を求めることができる:
Figure 0006626224
ただし、gi(x,p,u)=0,i=1,…,nは、ドメイン変数の連続微分関数である。
条件(3)が数値的に満たされる場合、解決、すなわち、ドメインのルールを満たす問い合わせにおける変数の値のセットが存在し、データトモグラフによって生成されたルールハミルトニアンが完備である。
ルールハミルトニアンが完備であるときであっても、それは既存のルールと適合すべきである。新しいデータが既存のルールと適合するために、以下の条件により、感知データを介する全体的ハミルトニアンに対する修正の意味論的生成を正当化する。それは、感知データおよびルールに対する構造的適合も提供する。トモグラフ条件から、完備化されたハミルトニアンはポテンシャルおよびルールが与えられると計算可能である。構造的可観測性条件は、完備であるハミルトニアンについての十分な感知情報を保証するように導出されることができる。
条件(4): 完備化されたハミルトニアンは、j=1,…,nについてトモグラフ条件
[φi(x,p,u),HR(x,p,u)]+[φi(x,p,u),HT(x,p,u)]=0
を満たし、ここで、HTは完備化されたハミルトニアンであり、HR(x,p,u)=HA(x,p,u)+Σλjφj(x,p,u)であり、[φj(x,p,u),HR+HT]=0であり、j=1,…,nである。
条件が満たされない場合、新しい情報から新しいハミルトニアンが構築または学習される。ハミルトニアンの構造的適合は、ここで説明されているようにデータから情報を抽出することによって達成される。Yk(t)を、k番目のセンサによって生成されたベクトルセンサ信号であるとする。すると、
k(t)=Ψk(t,x,p)
が得られ、ここでΨk(t,x,p)はセンサのモデルである。以下の条件は、感知データと構造的可観測性との間の関係を提供する。トモグラフを実施するためのアルゴリズムは、逆モデル法の適用に基づく。一般に、トモグラフを伴うハミルトニアンを解く収束の質および速さは、独立した感知信号の数と共に増大する。条件(5) HR(x,p,u)+HT(x,p,u)は、センサ完備化条件
Figure 0006626224
を各エージェントiのすべてのセンサk=1,…,Kiについて同時に満たす。
構造的可観測性は、HTの一意解に対応する。一般に、構造的可観測性は、緩和された意味のみで達成される。ここで、
k(t)=Ψk(t,x,p)
と共にベクトルセンサ信号Y_k(t)およびセンサのモデルΨk(t,x,p)が与えられると、HT,Kとして示される関連付けられたハミルトニアンは、次の形式を有する:
Figure 0006626224
以下の反復手順は、構造的適合のための数値的実施を提供する。手順および表記は、制約付きハミルトニアンのためのディラック理論に基づく。構造的適合手順1.
Figure 0006626224
が、最初のk−1個のセンサについて「ラウンドロビン条件」k=0modL(Lはセンサの数)でセンサ完備化条件を満たすとする。すると、k番目の完備化が、
Figure 0006626224
を満たし、ここで、各センサk,k=0modLについて
Figure 0006626224
である。
以下では、ハミルトニアンにおいて多くのセンサ信号を取り込むための反復手順を確立して、所与のエージェントについての複数のセンサが互いに適合することを保証する。修復条件が完備化を提供することにも留意されたい。構造的適合手順2.
Figure 0006626224
が、最初のk−1個のセンサについて「ラウンドロビン条件」k=0modL(Lはセンサの数)でセンサ完備化トモグラフィ条件を満たすとする。k番目の完備化が、各センサk,k=0modLについてすると、k番目の完備化が、修復条件
Figure 0006626224
を満たし、ここで、各センサk,k=0modLについて
Figure 0006626224
であり、
Figure 0006626224
は、センサによって引き起こされるエントロピを最小にするためのセンサkのハミルトニアンである。
図1Cおよび図1Gの詳細に加えて、図1Dは、トモグラフィ技法が対応するターゲットシステムについてのセンサデータに基づいてソフトルールおよび他の情報を生成しデータハミルトニアンへ追加するためにどのように使用されてよいかを示す、例示的なフロー図および追加の情報196である。図1Eはさらに、ターゲットシステムの部分的に知られた状態から欠損している情報を訂正するまたは他の形で完了させるためにトモグラフィ技法を使用するシステムのエージェントアーキテクチャ概略の例を示すブロック図197である。加えて、図1Fは、トモグラフを使用することによって、部分的に知られている状態から欠損している情報を訂正するまたは他の形で完了させることを含めて、対応するターゲットシステムを表わすハミルトニアンが部分的に知られているとき、CDDシステムのルールおよび他の状態情報がどのように最適化されてよいかを示す、例示的なフローおよび追加の情報198を示す。図10はさらに、トモグラフコンポーネントのアクティビティが示された修復手順の一部として実施されてよい、CDDシステムの実施形態の動作の高水準フロー1000を示す。図11は、複数のトモグラフコンポーネントの使用のさらなる例示的な詳細を有し、各トモグラフコンポーネントが分散CDDシステム実施形態においてN個のCDIエージェントのうちの1つに関係付けられた、ブロック図1100を示す。
トモグラフィ技法の使用を含む説明されている技法は、様々な利益および利点を提供することができる。そのような利益および利点の非限定的例は、ターゲットシステムの現在の状態がモデル化の方法を改善して、たとえば、ターゲットシステムの内部構造および動作を理解することなく単にターゲットシステム出力を入力から推定することを試みるのではなく、ターゲットシステムの内部動作をモデル化する関数および/または他の構造を生成することと、不確実性管理ならびに/または最適なディスパッチおよびコミットメントならびに/または異常検出および応答を取り扱う能力を向上することと、構造的適合を行って、ターゲットシステムの変化に対応する新しいソフトルールを自動的に学習することなどとを含む。
加えて、(たとえば、バッテリのDC電流および電圧を変えることによって)DC側でバッテリの電力出力が制御される実施形態に関連して、説明されている技法の利益および利点は、バッテリに接続されたインバータにより提供されるAC(交流)電圧および/または電流を単一の指定されたレベルに固定するのではなく、(たとえば、化学量論的範囲などの1つまたは複数の化学量論的限界内でバッテリの内部の化学的性質を維持することによって)内部温度および/または他のバッテリパラメータに関してバッテリがその最適なまたは最適に近い物理的状態で動作することを可能にすることと、不可逆的バッテリ損傷のおそれという代償を支払うが最大電力を提供する飽和レベルでバッテリを動作させることとを含む。このようにして、本明細書に説明されているようなトモグラフィ技法によって少なくとも一部生成されたバッテリ状態情報に照らして、バッテリの化学的性質の変化が可逆的であって短絡および他の不可逆的損傷が低減または除去される好ましい範囲で、バッテリが動作することを可能にすることによって、バッテリ寿命および他の動作性能が説明されている技法により最適化または他の形で向上されることができる。加えて、少なくともいくつかの実施形態では、バッテリの自動化制御は、他のコンポーネント(たとえば、負荷および/または外部電力グリッド)との電力出力量共鳴を向上および維持するためのバッテリの能動制御をさらに含むことができ、したがって、提供される電力の量は、電力出力要求または負荷量の少なくとも定義されたパーセンテージまたは他の量(たとえば、50%、65%、100%、または任意の他の定義されたパーセンテージもしくは他の量)を満たしながらも、必要とされる量を超えない。このようにして、そのような実施形態は、バッテリ損傷または他の問題(たとえば過剰加熱)を生じてもバッテリの出力電圧または電流を固定しすべての電力要求を満たす既存のシステムではなく、可能な場合に電力出力要求を満たし、制御されるバッテリの内部状態および(寿命を含む)動作性能を管理する自動化制御システムとして概念化されることができる。上記および本明細書のいくつかの他の箇所で論じられる利益および動作は、バッテリから出力される電力を制御することに関するが、同じ技法が、1つまたは複数の電源からバッテリ内に貯蔵される電力を制御するために使用されることができ、電力を貯蔵しながら、バッテリが、熱および他のバッテリパラメータに関してその最適なまたは最適に近い物理的状態で動作するようにし、また、電力が1つまたは複数の電源によって提供されるための電力入力要求の少なくとも定義されたパーセンテージまたは他の量(たとえば、50%、65%、100%、または任意の他の定義されたパーセンテージもしくは他の量)を満たしながら、バッテリの化学的性質の変化が可逆的である好ましい範囲で、バッテリが動作することを可能にすることによって、バッテリ寿命および他の動作性能を最適化または他の形で向上するようにすることは理解されよう。追加の利益および利点は、以下を含み、特に示されない限り、本明細書で使用される特徴または結果を「最適化する」という用語は、一般にその特徴または結果を(たとえば、部分的または完全な最適化によって)改善することを意味し、本明細書で使用される「リアルタイム」という用語は、制御されている結果のコンポーネントまたはシステムに固有の時間フレーム(たとえば、秒の分数、秒、分など)に関して意味を有する。
● I(電流)、V(電圧)、およびR(出力されている電力の量)のようなDC制御変数を最適化することによって、バッテリ寿命を改善することができる
● バッテリの化学的性質の事前の特徴付けと関連してDC制御変数(I,V,R)を最適化することによってバッテリ寿命を改善することができ、また、性能および寿命を改善するようにDCレベルで最適化することができる
● AC相において目的を解決するためにDC領域でリアルタイムに変数を最適化することができる
● 他のグリッドコンポーネントなしでバッテリ出力のみの制御によるなどして、共鳴動作をもたらすグリッド周波数に一致するようにリアルタイムでAC出力を最適化することができる
● 充電/放電サイクルを改善して長期バッテリ利用可能性を改善することができる
● AC負荷応答を改善することができる
● 長期バッテリ利用可能性を改善することと組み合わせてAC負荷応答を改善することができる
● バッテリコントローラが、プロセッサ上で組み込まれたソフトウェアとして自己充足的に動作することができる
● バッテリコントローラが、外部位置(たとえば、クラウドまたは他のネットワークアクセス可能位置)から継続的に監視および更新されることができる
● バッテリコントローラが、バッテリ特性を送信して性能を改善することができる
● 静止型無効電力補償装置ハードウェアに関する出費を回避することができる
以下により詳細に一部が論じられるように、様々な他の利益および利点が少なくともいくつかの実施形態でさらに実現されることができる。例示のため、以下に含まれるいくつかの実施形態に関するいくつかの追加の詳細では、特定種類のターゲットシステム、および特定の方式で決定された特定種類の制御アクティビティに関することを含めて、特定の方式で特定種類の動作が行われる。これらの例は、例示のため提供され簡潔にするために単純化されるが、本発明の技法は、他の環境内および他の種類の自動化制御アクション決定技法を含む様々な他の状況で使用されてよく、それらの一部が以下に論じられる。
図3は、本明細書の他の箇所でより詳細に論じられるように、トモグラフィ技法を使用して生成された状態情報に少なくとも一部基づいて、構成された方式で指定された物理システムまたは他のターゲットシステムの少なくともいくつかの動作を制御または他の形で操作するために自動化制御システムを実施するための技法を実施するのに適した例示的コンピューティングシステムを示すブロック図である。具体的には、図3は、1つまたは複数のトモグラフコンポーネントを含むCDDシステムの少なくとも一部の機能を提供するのに適したサーバコンピューティングシステム300を示すが、他の実施形態では、複数のコンピューティングシステムが実行のために使用されることができる(たとえば、実行時制御が発生する前の初期構成およびセットアップのためのCDD判断モジュール構築コンポーネント、ならびに実際の実行時制御のための1つもしくは複数のコピーのCDD制御アクション決定コンポーネント344および/またはCDD調整制御管理コンポーネント346および/またはトモグラフコンポーネント345を、別個のコンピューティングシステムに実行させる;1つまたは複数のコンピューティングシステムにトモグラフコンポーネントを実行させ、トモグラフコンポーネントが相互作用するCDDシステムの一部または全部を実行する1つまたは複数の他のコンピューティングシステムとトモグラフコンポーネントは分離している;異なるコンピューティングシステムに異なるトモグラフコンポーネントを実行させるなど)。図3はまた、CDDシステム340のカスタマまたは他のユーザによって使用できる様々なクライアントコンピュータシステム350、ならびに制御される1つまたは複数のターゲットシステム(この例では、1つまたは複数のコンピュータネットワーク390を介してCDDシステム340およびそのトモグラフコンポーネント345にアクセス可能なターゲットシステム1 360およびターゲットシステム2 370)を示す。
示された実施形態では、1つまたは複数のトモグラフコンポーネント345は、CDDシステム340の一部としてメモリ330において実行されており、いくつかの実施形態では、コンポーネントは各々が様々なソフトウェア命令を含み、これらのソフトウェア命令は、実行されたとき、本明細書の他の箇所に説明されているように、トモグラフコンポーネントの実施形態を提供するようにハードウェアCPUプロセッサ305のうちの1つまたは複数をプログラムする。動作中、少なくともいくつかの実施形態では、各トモグラフコンポーネントは、本明細書の他の箇所でより詳細に論じられるように、1つまたは複数のターゲットシステム状態モデル(たとえば、ストレージ320に記憶されたモデル322のメモリ内コピー)を修正または他の形で生成し、様々な入力データ324を取得し、様々な情報を他の実行コンポーネントと交換してよい。
サーバコンピューティングシステム300は、示された実施形態では、1つまたは複数のハードウェアCPU(「中央処理装置」)コンピュータプロセッサ305、様々なI/O(「入力/出力」)ハードウェアコンポーネント310、ストレージ320、およびメモリ330を含むコンポーネントを有する。示されたI/Oコンポーネントは、ディスプレイ311、ネットワーク接続312、コンピュータ可読メディアドライブ313、および他のI/Oデバイス315(たとえば、キーボード、マウス、スピーカなど)を含む。加えて、示されたクライアントコンピュータシステム350は各々が、サーバコンピューティングシステム300のコンポーネントに類似するコンポーネントを有することができ、それらのコンポーネントは、1つまたは複数のハードウェアCPU351、I/Oコンポーネント352、ストレージ354、およびメモリ357を含むが、簡潔にするためにコンピューティングシステム350について一部の詳細は示されていない。ターゲットシステム360および370も各々が、サーバコンピューティングシステム300に関して示されたコンポーネントの一部または全部に類似するコンポーネントを有する1つまたは複数のコンピューティングシステム(図示せず)を含むことができるが、簡潔にするため、この例にはそのようなコンピューティングシステムおよびコンポーネントも示されていない。
CDDシステム340は、メモリ330において実行されており、コンポーネント342ないし346を含み、いくつかの実施形態では、これらのシステムおよび/またはコンポーネントは各々が、様々なソフトウェア命令を含み、これらのソフトウェア命令は、実行されたとき、本明細書の他の箇所に説明されているようにCDDシステムの実施形態を提供するようにCPUプロセッサ305のうちの1つまたは複数をプログラムする。CDDシステム340は、ネットワーク390を介して(たとえば、インターネットおよび/またはワールドワイドウェブを介して、プライベートセルラーネットワークを介してなど)コンピューティングシステム350と、また、この例ではターゲットシステム360および370と相互作用することができる。この例示的実施形態では、CDDシステムは、本明細書の他の箇所でより詳細に論じられるように、カスタマまたは他のユーザのために構成された方式で判断モジュールを生成および配置すること、ならびにトモグラフコンポーネント345を実行時に生成または配置して対応するターゲットシステムのモデル化された状態情報を改善することに関係付けられた機能性を含む。他のコンピューティングシステム350も、CDDシステム340および/またはそのコンポーネントとの相互作用の一部として、様々なソフトウェアを実行していることができる。たとえば、クライアントコンピューティングシステム350は、(たとえば、ウェブブラウザの一部、専用クライアント側アプリケーションプログラムなどとして)CDDシステム340と相互作用するためにメモリ357におけるソフトウェアを実行していることができ、それにより、たとえば、CDDシステム340の1つまたは複数のインターフェース(図示せず)と相互作用して、自動化制御システム(たとえば、1つまたは複数の物理ターゲットシステムを制御する際に使用するためにCDDシステム340によって以前に作成されている記憶された自動化制御システム325)または他の判断モジュール329を構成および配置し、また、他の箇所でより詳細に論じられるように様々な他の種類のアクションを行う。CDDシステム340の機能性に関係付けられた様々な情報、たとえば、CDDシステムのユーザに関係付けられた情報321(たとえば、アカウント情報)、および1つまたは複数のターゲットシステム(たとえば、制御されるバッテリを有するシステム)に関係付けられた情報323が、ストレージ320に記憶されることができる。
コンピューティングシステム300および350ならびにターゲットシステム360および370は例示にすぎず、本発明の範囲を限定することは意図されていないことは理解されよう。むしろ、コンピューティングシステムは各々が、複数の相互作用しているコンピューティングシステムまたはデバイスを含むことができ、コンピューティングシステム/ノードは、インターネットなどの1つもしくは複数のネットワーク、ウェブ、またはプライベートネットワーク(たとえば移動通信ネットワークなど)を介することを含めて、示されていない他のデバイスに接続されることができる。より一般的には、コンピューティングノードまたは他のコンピューティングシステムもしくはデバイスは、相互作用しまた説明された種類の機能性を実行することができるハードウェアの任意の組み合わせを含むことができ、そのようなハードウェアは、限定としてではなく、デスクトップまたは他のコンピュータ、データベースサーバ、ネットワークストレージデバイスおよび他のネットワークデバイス、PDA、携帯電話、無線電話、ポケットベル、電子手帳、インターネット機器、テレビベースのシステム(たとえば、セットトップボックスおよび/またはパーソナル/デジタルビデオレコーダを使用するもの)、ならびに適切な通信能力を含む様々な他の消費者製品を含む。加えて、示されたCDDシステム340およびそのコンポーネントによって提供される機能性は、いくつかの実施形態では、追加のコンポーネントに分散されることができる。同様に、いくつかの実施形態では、CDDシステム340および/もしくはCDDコンポーネント342ないし346の機能性の一部は提供されなくてよく、ならびに/または他の追加の機能が利用可能であってよい。
特定のターゲットシステムのための自動化制御システムを実施することの一部として、協働分散判断(CDD)システムの実施形態は、説明されている技法を使用して、特定のターゲットシステムを制御するのに使用するための1つまたは複数のCDIエージェント(CDD判断モジュールもしくはシステム、またはそのようなモジュールもしくはシステムの部分とも呼ばれる)を含む、自動化制御システムを構築および実施するのに関与する様々な自動化されたアクティビティを行うことができる。
具体的には、CDDシステムは、いくつかの実施形態では、1つまたは複数のユーザと相互作用してターゲットシステムの記述を取得する判断モジュール構築コンポーネントを実施することができ、ターゲットシステムの記述は、ターゲットシステムの様々な要素に関係付けられた制約、およびターゲットシステムの制御中に達成されるべき1つまたは複数の目標を含む。次いで、判断モジュール構築コンポーネントは、様々な自動化されたアクションを行って、ターゲットシステムの制御を行う際に使用するための1つまたは複数の実行可能判断モジュール(「判断要素」および/または「エージェント」と呼ばれることもある)を生成、テスト、および配置する。1つまたは複数の実行可能判断モジュールが配置および実行されると、CDDシステムは、判断モジュールによるターゲットシステムの制御を管理するために実行されている判断モジュールの内部または外部の様々なコンポーネントをさらに提供することができ、たとえば、各判断モジュールが生成する制御アクションを最適化もしくは他の形で向上するための各判断モジュールの制御アクション決定コンポーネント、ターゲットシステムについてのモデル化された状態情報を改善するためのトモグラフ、および/またはターゲットシステムの制御を共同で行っている複数の判断モジュールの制御アクションを調整するための1つもしくは複数の調整制御管理コンポーネントを提供することができる。
上記されたように、協働分散判断(CDD)システムは、いくつかの実施形態では、指定されたターゲットシステムのための自動化制御システムを構築および実施して、たとえば、ターゲットシステムの動作に影響する(たとえば、ターゲットシステムの1つまたは複数の出力に影響する)ターゲットシステムの入力または他の制御要素を修正または他の形で操作することに関与する、様々な自動化されたアクティビティを行うために、説明されている技法の少なくともいくつかを使用することができる。そのようなターゲットシステムのための自動化制御システムは、いくつかの状況では、ターゲットシステムの協調分散制御を提供する分散されたアーキテクチャを有し、これは、たとえば、ターゲットシステムの部分を各々が制御し互いに関して部分的に分離された方式で動作する複数の判断モジュールを有する。その場合、自動化制御システムのための様々な判断モジュールの動作は、常にすべての判断モジュールの完全に同期された収束が保証または達成されなくても、各々が1つまたは複数の時間において1つまたは複数の他の判断モジュールとのコンセンサスに達することなどによって、少なくとも部分的に同期されることができる。
CDDシステムは、いくつかの実施形態では、1つまたは複数のユーザと相互作用してターゲットシステムの記述を取得する判断モジュール構築コンポーネントを実施することができ、ターゲットシステムの記述は、ターゲットシステムの様々な要素に関係付けられた制約、およびターゲットシステムの制御中に達成されるべき1つまたは複数の目標を含む。次いで、判断モジュール構築コンポーネントは、様々な自動化されたアクションを行って、ターゲットシステムの制御を行う際に使用するための1つまたは複数の実行可能判断モジュールを生成、テスト、および配置する。したがって、判断モジュール構築コンポーネントは、生成された判断モジュールがターゲットシステムの制御を行うように実行される、後の実行時フェーズよりも前に生じる、構成またはセットアップフェーズの一部として動作することができ、いくつかの実施形態および状況では、判断モジュール構築コンポーネントは、1つまたは複数の判断モジュールを有する自動化制御システムを改善、拡張、または他の形で修正するために初期配置の後に(たとえば、自動化制御システムが、ターゲットシステムを制御するために使用され続ける間に)さらに使用されて、たとえば、データトモグラフコンポーネントの機能性を実施して制御されているターゲットシステムのモデルを改善および更新し、または自動化制御システムのための判断モジュールの追加、除去、もしくは修正をすることができる。
いくつかの実施形態では、生成され配置された一部または全部の自動化制御システムは、自動化制御システムの実行時動作中の実行のためにそれらの中に様々なコンポーネントをさらに提供することができ、いくつかの実施形態および状況では、そのようなコンポーネントを判断モジュール内に含めることなどによって提供することができる。そのようなコンポーネントは、たとえば、各判断モジュール(または一部の判断モジュール)の制御アクション決定コンポーネントであって、その判断モジュールが生成する制御アクションを最適化または他の形で決定し改善する制御アクション決定コンポーネント、および/またはターゲットシステムのモデル化された状態情報を改善する各判断モジュール(または一部の判断モジュール)のトモグラフコンポーネントを含むことができる。たとえば、判断モジュール内のそのような制御アクション決定コンポーネントは、いくつかの実施形態では、1つまたは複数の目標に関して、複数の相互に関係付けられた制約条件を有するターゲットシステムのための判断モジュールのモデルに照らして、またターゲットシステムについてモデル化された現在の状態情報に基づいて、最適に近い解を反映するために、特定の時間における判断モジュールの制御アクションを自動的に決定することを試みることができ、その場合、そのような最適に近い解は、完全に最適化された解の閾値量内の部分的に最適化された解に少なくとも一部基づくことができる。実行する1つまたは複数の制御アクションのそのような決定は、特定の時間に、1つまたは複数の判断モジュールの各々について発生することができ、また、いくつかの状況において少なくともいくつかの判断モジュールによって進行中の制御に関して複数回にわたって繰り返されることができる。いくつかの実施形態では、判断モジュールのためのモデルは、本明細書の他の箇所でより詳細に論じられるように、ターゲットシステムの少なくとも部分を表す制約条件に一部基づいて結合された微分方程式のセットを反映するハミルトン関数として実施されて、たとえば、モデルおよびそのハミルトン関数実施が、発展するハミルトン関数内に追加の式を加えることによって複数時間期間にわたって更新されることを可能にする。
いくつかの実施形態では、自動化制御システムの実行時動作中の実行のために生成および配置された自動化制御システム内に含まれたコンポーネントは、自動化制御システムのためのターゲットシステムの制御を共同で行っている複数の判断モジュールの制御アクションを調整するための調整制御管理コンポーネントをさらに含むことができる。たとえば、いくつかの実施形態では、一部または全部の判断モジュールの各々が、そのような制御アクション決定コンポーネントを含むことにより、その判断モジュールのローカル解および提案された制御アクションを自動化制御システム内の1つまたは複数の他の判断モジュールのそれらと同期しようと試みることができ、たとえば、判断モジュールのローカルモデルおよび1つまたは複数の他の判断モジュールのモデルから同時に解を提供するそれら他の判断モジュールとのコンセンサス共有モデルを決定することによって同期を試みる。そのようなモジュール間同期は、繰り返し発生して、特定の時間において各判断モジュールについての1つまたは複数の制御アクションを決定し、また進行中の制御に関して複数回にわたって繰り返されることができる。加えて、各判断モジュールのモデルは、本明細書の他の箇所でより詳細に論じられるように、いくつかの実施形態では、ターゲットシステムの少なくとも部分を表す制約条件に一部基づいて結合された微分方程式のセットを反映するハミルトン関数として実施されて、たとえば、各判断モジュールのモデルおよびそのハミルトン関数実施が、判断モジュールのローカルモデルに関する初期ハミルトン関数内に1つまたは複数の他の判断モジュールのモデルに関する追加の式を加えることによって、それらの他の判断モジュールのモデルと組み合わされることを可能にする。
また、様々な要素が使用されているときにメモリまたはストレージに記憶されているように示されているが、これらの要素およびその部分は、メモリ管理およびデータ整合性のためにメモリおよび他のストレージデバイスの間で転送されることができる。あるいは、他の実施形態では、ソフトウェアモジュールおよび/またはシステムの一部または全部が、別のデバイス上のメモリにおいて実行され、コンピュータ間通信を介して、示されたコンピューティングシステムと通信することができる。したがって、いくつかの実施形態では、説明されている技法の一部または全部は、1つもしくは複数のソフトウェアプログラム(たとえば、トモグラフコンポーネント345および/もしくはCDDコンポーネント342ないし346、またはより一般的には、CDDシステム340)および/またはデータ構造によって、たとえば、1つもしくは複数のソフトウェアプログラムのソフトウェア命令の実行ならびに/またはそのようなソフトウェア命令および/もしくはデータ構造の記憶によって構成されたとき、1つもしくは複数のプロセッサおよび/またはメモリおよび/またはストレージを含むハードウェア手段によって実行されることができる。さらに、いくつかの実施形態では、システムおよび/またはコンポーネントの一部または全部が、他の方式で、たとえば、ファームウェアおよび/またはハードウェアに少なくとも部分的にまたは完全に実施された手段を使用することによって、実施または提供されることができ、そうしたファームウェアおよび/またはハードウェアは、以下に限定されないが、1つまたは複数の特定用途向け集積回路(ASIC)、標準集積回路、コントローラ(たとえば、適切な命令を実行することによるコントローラ、マイクロコントローラおよび/または組み込みコントローラを含む)、フィールドプログラマブルゲートアレイ(FPGA)、コンプレックスプログラマブルロジックデバイス(CPLD)などを含む。また、コンポーネント、システム、およびデータ構造の一部または全部は、非一時的コンピュータ可読記憶媒体、たとえば、ハードディスクもしくはフラッシュドライブもしくは他の不揮発性ストレージデバイス、揮発性もしくは不揮発性メモリ(たとえばRAM)、ネットワークストレージデバイス、または適切なドライブ(たとえば、DVDディスク、CDディスク、光ディスクなど)によってもしくは適切な接続を介して読み取られる携帯媒体物品に、(たとえば、ソフトウェア命令または構造化されたデータとして)記憶されることもできる。また、システム、コンポーネント、およびデータ構造は、いくつかの実施形態では、無線ベースおよび有線/ケーブルベースの媒体を含む様々なコンピュータ可読伝送媒体上で、生成されたデータ信号として(たとえば、搬送波の一部、または他のアナログもしくはデジタル伝播信号として)送信されることもでき、(たとえば、単一のもしくは多重化されたアナログ信号の一部として、または複数の離散デジタルパケットもしくはフレームとして)様々な形態をとることができる。そのようなコンピュータプログラム製品は、他の実施形態では他の形態をとることもできる。したがって、本発明は他のコンピュータシステム構成で実施されることができる。
いくつかの実施形態では、上記に論じられたルーチンによって提供される機能性は、より多くのルーチンに分割されるまたはより少ないルーチンに統合されるなど、代替的方法で提供されてよいことは理解されよう。同様に、いくつかの実施形態では、示されたルーチンは、他の示されたルーチンがそれぞれそのような機能性を欠くもしくは含むとき、または提供される機能性の量が変更されたときなどに、説明されたものより多いまたは少ない機能を提供することができる。加えて、加えて、様々な動作が、特定の方式(たとえば、直列、並列、同期、または非同期など)および/または特定の順序で行われるように示されることがあるが、他の実施形態において他の順序および他の方式で動作が実行されてよいことは当業者には理解されよう。また、上記に論じられたデータ構造は、異なる方式で、たとえば、単一のデータ構造を複数のデータ構造に分割させることによって、または複数のデータ構造を単一のデータ構造に統合させることによって構造化されてよいことは、当業者には理解されよう。同様に、いくつかの実施形態では、示されたデータ構造は、説明されたものより多いまたは少ない情報を他の示されたデータ構造がそれぞれそのような情報を欠いたときもしくは含むとき、または記憶される情報の量もしくは種類が変更されたときなどに、記憶することができる。
図4は、協働分散判断(CDD)システムルーチン400の例示的実施形態のフロー図であり、システムルーチン400は、たとえば、図3のCDDシステム340および/または図1AのCDDシステム140の実行によって提供されて、たとえば、指定されたターゲットシステムのために自動化制御システムを構築および実施するための機能性を提供することができる。
ルーチンの示された実施形態はブロック410で始まり、ここでは、情報または命令が受け取られる。ブロック420において、ブロック410の情報または命令が、特定のターゲットシステムのための自動化制御システムの一部として使用するための1つまたは複数の判断モジュールを作成または改訂するインジケーションを含むと決定された場合、ルーチンはブロック425へと続き、判断モジュール構築コンポーネントの実行を開始し、ブロック430で、ブロック425で作成されたターゲットシステムのための1つまたは複数の結果の判断モジュールを取得および記憶する。そのような判断モジュール構築コンポーネントの一例は、図5Aないし図5Cに関連してより詳細に論じられる。
ブロック430の後、またはそうではなく、ブロック410で受け取られた情報もしくは命令が1つもしくは複数の判断モジュールを作成もしくは改訂するものではないとブロック420で決定された場合、ルーチンはブロック440へと続き、ブロック410で受け取られた情報または命令が、指定されたターゲットシステムを制御するために1つまたは複数の作成された判断モジュール、たとえば、そのターゲットシステムのための自動化制御システムの一部である1つまたは複数の判断モジュールを配置することを示すかどうかを決定する。配置する1つまたは複数の判断モジュールは、配置が実質的に作成と同時に行われるように、ブロック425に関して直前に作成されていることが可能であり、または他の状況では、以前に作成され後で使用するために記憶された1つまたは複数の判断モジュールを含むことができる。そのようなターゲットシステムのための1つまたは複数のそのような判断モジュールを配置することが決定された場合、ルーチンはブロック450へと続き、たとえば、ターゲットシステムの環境に対してローカルの1つもしくは複数のコンピューティングシステム上で、またはそうではなく、1つもしくは複数の介在コンピューティングネットワークを介してターゲットシステムと通信する1つもしくは複数のリモートコンピューティングシステム(たとえば、CDDシステムのプロバイダの制御下の1つもしくは複数のコンピューティングシステム)上で、そのターゲットシステムのためのそれら1つまたは複数の判断モジュールの実行を開始する。
ブロック450の後、ルーチンはブロック460へと続き、1つまたは複数の集中化された調整制御管理コンポーネントなどを介して、複数の判断モジュールの外部の方式で配置されているそれらの判断モジュールの分散された管理を行うかどうかを決定する。そうする場合、ルーチンはブロック465へと続き、それらの判断モジュールと使用するための1つまたは複数のそのような集中化されたCDD調整制御管理コンポーネントの実行を開始する。ブロック465の後、またはそうではなく、外部の方式でそのような分散された管理を行わないとブロック460で決定された場合(たとえば、1つだけの判断モジュールが実行される場合、複数の判断モジュールが実行されるが、分散されたピアツーピア方式でそれらの動作を調整する場合など)に、ルーチンはブロック470へと続き、任意選択で、1つもしくは複数の判断モジュールの動作および/またはターゲットシステムで発生する結果のアクティビティに関する情報を、後の分析および/または報告などのために、取得および記憶する。
そうではなく、ブロック410で受け取られた情報または命令が1つまたは複数の判断モジュールを配置するものではないとブロック440で決定された場合、ルーチンは代わりにブロック485に続き、必要に応じて1つまたは複数の他の示された動作を行う。たとえば、そのような他の許可される動作は、他の方式で(たとえば、ターゲットシステムに関する出力または他の状態情報を監視することによって)ターゲットシステムの動作に関する結果情報を取得すること、判断モジュールの動作の結果および/または対応するターゲットシステムのアクティビティを分析すること、そのような動作および/またはアクティビティに関してユーザに対して報告を生成するまたは他の形で情報を提供することを含むことができる。加えて、いくつかの実施形態では、経時的な特定のターゲットシステムのアクティビティの分析は、ターゲットシステムの動作においてパターンが識別されるのを可能にすることができ、たとえば、それらのパターンを反映しそれらに基づいて応答するために、そのターゲットシステムのモデルが(手動または自動化された学習方式で)相応に修正されることを可能にする。加えて、他の箇所でより詳細に論じられるように、部分的に分離された方式での自動化制御システムのための複数の判断モジュールの分散された動作は、自動化制御システムが動作中に様々な変更が行われることを可能にし、たとえば、1つまたは複数の新しい判断モジュールを追加すること、1つまたは複数の既存の判断モジュールを除去すること、(判断モジュールのモデルの一部であるターゲットシステムを記述するルールまたは他の情報を変更することによって)特定の判断モジュールの動作を修正することなどを可能にする。加えて、自動化制御システムにおける複数のそのような判断モジュールの部分的に分離された性質は、たとえば、ネットワーク通信問題または他の問題が、そうでなければ判断モジュールの個別化された制御アクションが調整されることを可能にする複数の判断モジュール間の通信を防止する場合に、1つまたは複数のそのような判断モジュールが折に触れて独立して動作することを可能にし、そのような状況では、一部または全部のそのような判断モジュールが個別化された方式で動作を続けて、たとえば、最適または最適に近い解が、ターゲットシステムのための自動化制御システムを共同で提供するグループの複数の判断モジュールの間の調整および同期から識別できない場合でも、ターゲットシステムのための有用な続行する制御動作を提供することができる。
ブロック470または485の後、ルーチンはブロック495へと続き、継続するかどうかを決定し、たとえば停止する明示的インジケーションが受け取られるまで継続する。継続すると決定された場合、ルーチンはブロック410に戻り、そうでない場合はブロック499に進んで終了する。
図5Aないし図5Cは、CDD判断モジュール構築ルーチン500の例示的実施形態のフロー図を示す。ルーチンは、たとえば、図3のコンポーネント342および/または345および/または図1Aのコンポーネント142に実行によって提供されることができ、たとえば、関心のあるターゲットシステムを記述する情報をユーザが提供することを可能にする機能性を提供し、対応する自動化された動作を行って、指定された方式でターゲットシステムを制御するのに使用するための1つまたは複数の判断モジュールを構築する。ルーチンの示された実施形態は、表示されたGUI(グラフィカルユーザインターフェース)などを介して特定の方式でユーザと相互作用するが、ルーチンの他の実施形態は、他の方式で、たとえば、ユーザの代わりに実行プログラムが呼び出す定義されたAPI(アプリケーションプログラミングインターフェース)を介して、ユーザと相互作用することができることは理解されよう。いくつかの実施形態では、ルーチンはさらに、統合された開発環境の一部として、または、たとえば、インターネットなどの公衆ネットワークを介して様々なリモートユーザに利用可能なオンラインインターフェースを実施することによって、1つもしくは複数のユーザが使用できる他のソフトウェアツールとして実施されることもでき、他の実施形態では、CDDシステムおよび/または特定のCDDコンポーネントのコピーが、たとえば、組織またはグループの制御下でコンピューティングシステム上で実行されることによって、単一の組織または1つもしくは複数のユーザからなる他のグループをサポートするために使用されることができる。加えて、CDD判断モジュール構築コンポーネントは、いくつかの実施形態および状況では、ターゲットシステムに関するルールおよび他の記述情報を指定するためにユーザが相互作用するルールエディタコンポーネント、ならびに、ユーザ指定されたルールおよび他の情報を処理して1つまたは複数の対応する判断モジュールを作成するルールコンパイラエンジンなど、複数のサブコンポーネントに分割されることができる。
ルーチン500の示された実施形態はブロック505で始まり、ここでは、ルーチンは、たとえば、定期的に、図6Bのブロック684によって呼び出されることに基づいて、または1つもしくは複数のトリガー条件が満たされることに応答して、ターゲットシステムのモデルに対するあり得る追加のために新しいソフトルールを学習するためにデータトモグラフコンポーネントを現在使用するかどうかを決定する。使用する場合、ルーチンは、図5Cのブロック563へと続き、そうでない場合はブロック510へと続き、ルーチンは、1つまたは複数のユーザへの表示されたユーザインターフェースを、たとえば、ルーチンを実施しているコンポーネントのオンラインバージョンで受け取られた要求を介して、またはそうではなく、1つもしくは複数のそのようなユーザによってそれらが制御するコンピューティングシステム上でルーチンが実行されていることに基づいて、提供または更新する。ルーチンの示された実施形態では、例示の目的で、様々な動作が連続した方式で発生するように示されているが、そのようなユーザインターフェースとのユーザ相互作用は、反復する方式で、ならびに/または複数の時間期間および/もしくはユーザセッションにわたって行うことができ、様々な方式でユーザに以前に表示されたユーザインターフェースを更新すること(たとえば、ユーザアクションを反映する、ルーチンの動作によってもしくは別のコンポーネントから生成されたユーザフィードバックを反映するなど)を含むことは理解されよう。
ブロック510の後、ルーチンはブロック520へと続き、制御されるターゲットシステムを記述する1つまたは複数のそのようなユーザからの情報を受け取り、この情報は、1つまたは複数の操作可能な制御要素および任意選択で制御要素が影響する1つまたは複数の出力を含む、ターゲットシステムの複数の要素に関する情報と、要素に関わる制約を指定するルールに関する情報と、システムの制御中に利用可能となる状態情報に関する情報(たとえば、特定の要素の値または他の状態変数)と、ターゲットシステムの制御中に達成すべき1つまたは複数の目標とを含む。そのような情報は、1つまたは複数のユーザから時間の期間にわたって取得されることができ、いくつかの実施形態では、たとえば、異なるユーザの異なる領域の専門知識および/またはターゲットシステムの異なる部分を反映するために、第1のグループの1つまたは複数のユーザが、ターゲットシステムに関係付けられたある種の情報を提供し、1つまたは複数の他の第2のグループのユーザが、ターゲットシステムに関する他の情報を独立して提供することを含むことは理解されよう。
ブロック520の後、ルーチンはブロック525へと続き、ユーザ入力で受け取られた任意のエラーを識別し、たとえばブロック510に関連して論じられた対応する方式で表示を更新することによって、ユーザにそれらのエラーを訂正するように促す。そのようなエラーの識別はブロック520での情報の受け取り後に発生するように示されているが、そうではなく、一部または全部のそのようなエラーは、たとえば、ユーザが指定するルールまたは他の情報における構文エラーを識別するために、ユーザがユーザインターフェースに情報を入力しているときに識別されることができることは理解されよう。ブロック525の後、ルーチンの示された実施形態はブロック530へと続き、任意選択で、ターゲットシステムに関する情報を、各々がターゲットシステムの部分に対応する複数のサブセットへ分解し、たとえば、各サブセットは、ルーチンによって作成されている自動化制御システムによって操作可能な1つまたは複数の異なる制御要素を有し、任意選択で、ターゲットシステムの各部分を記述するルールおよび他の情報の重複するまたは完全に異なる目標および/またはセットを有する。他の箇所で論じられるように、そのような分解は、行われる場合、いくつかの状況において、ユーザが入力する異なる情報サブグループをユーザが示すことによって手動で、および/または指定されている情報の分析に基づいて(たとえば、ターゲットシステムに関して供給されるルールのサイズおよび他の記述情報に基づく、異なるルールまたは目標または他の情報の間の相互関係に基づくなどして)ルーチンによって自動化された方式で、行われることができる。他の実施形態では、そのような分解は行われなくてよい。
ブロック530の後、ルーチンはブロック535へと続き、ターゲットシステム記述情報の各サブセットについて(または、そのようなサブセットが識別されない場合にすべての受け取られた情報について)、そのサブセット(またはすべての情報)を、そのサブセット(またはすべての情報)についての制約、目標、および他の指定された情報を封入する制約条件のセットへ変換する。ブロック540では、ルーチンは、次いで、変換プロセスから発生する任意のエラーを識別し、何らかのエラーが識別された場合、ブロック525および510に関連して説明されたのと同様の方式などで、ユーザにそれらのエラーを訂正するように促すことができる。この例では示されていないが、ルーチンは、いくつかの状況では、ブロック525および/または540でそのようなエラーが識別された場合にブロック510に戻って、対応するフィードバックをユーザへ表示し、ユーザが訂正を行ってブロック520ないし540などの後続の動作を再実行することを可能にすることができる。ブロック540において変換プロセスで識別されたエラーは、たとえば、グループとして制約を満たすことが不可能である場合などに、不整合な制約に関連付けられたエラーを含むことができる。
ブロック540の後、ルーチンはブロック545へと続き、制約条件の各セット(またはブロック530でサブセットが識別されなかった場合は単一の制約条件)について、1つまたは複数の検証ルールを制約条件のセットに適用して、制約条件が表す対応する情報の全体的効果をテストし、ブロック525、540、および510に関する方式と同様の方式で、識別された任意のエラーを訂正するように1つまたは複数のユーザに促す。そのような検証は、他の箇所でより詳細に論じられるように、可制御性、可観測性、安定性、および目標完全性、ならびにユーザにより追加された任意の検証ルールのうちの1つまたは複数をテストすることができる。ブロック550では、ルーチンは次いで、制約条件の各検証されたセットを、基礎となる情報が対応するターゲットシステム少なくとも部分をモデル化する結合された微分方程式のセットに変換する。
ブロック550の後、ルーチンはブロック553へと続き、結合された微分方程式の各セットについてモデルをトレーニングすることに関係付けられたアクティビティを行い、使用するトレーニング時間窓のサイズ、時間窓内の複数のトレーニング時間スライスのサイズ、および/または時間窓内のトレーニング時間スライスの種類のうちの1つまたは複数を決定することを含む。いくつかの実施形態および状況では、1つまたは複数のそのようなサイズまたは種類の情報の決定は、デフォルトまたは予め指定された情報によって行われるが、他の実施形態および状況では、ユーザがそのような情報を指定することができ、または、そのような情報の自動化された決定が、1つもしくは複数の方式で(たとえば、異なるサイズをテストし、結果を評価して最良の性能を伴うサイズを見つけることによって)行われることができる。異なる種類の時間スライスは、たとえば、重複するまたは重複しない時間スライスの連続を含むことができ、第2の時間スライスに関するトレーニングは、第1の時間スライスの結果のみに(それらが重複しない場合に)依存することができ、またはそうではなく(それらが一部または全体として重複する場合に)第1の時間スライスの少なくとも一部について既に決定された情報の更新に少なくとも一部に基づくことができる。ブロック553の後、ルーチンはブロック555へと続き、モデルを表す結合された微分方程式の各セットについて、ターゲットシステムの部分的初期状態情報を使用してそのセットの結合された微分方程式のモデルをトレーニングし、時間窓にわたって、たとえば時間窓を通して連続する時間スライスにおいて制御アクションを行う効果をシミュレートすることによって、ターゲットシステムについて知られていないおよび/または直接観測可能でない変数の値を推定し、トレーニングされたモデルのシミュレートされた性能をテストすることを含む。トレーニングおよびテストに関係付けられた追加の詳細は、本明細書に含まれる。
ブロック555の後、ルーチンはブロック560へと続き、トレーニングおよびテストが成功したかどうかを決定し、成功しない場合はブロック510に戻り、対応するフィードバック情報をユーザへ表示し、成功を欠如させたエラーをユーザが訂正することを可能にする。しかしながら、ブロック560で、そうではなくテストおよびトレーニングが成功したと決定された場合、またはモデルが1つまたは複数の学習されたソフトルールで更新された図5Cのブロック581の後、ルーチンは代わりにブロック585へと続き、各トレーニングおよびテストされたモデルについて実行可能判断モジュールを生成し、このモジュールは、そのモデル、およびローカルCCD制御アクション決定コンポーネントを含み、ローカルCCD制御アクション決定コンポーネントは、実行されたときに、判断モジュールが使用し、モデルに含まれる情報に基づいて、またその判断モジュールについての1つまたは複数の目標に照らして、ターゲットシステムについて行う最適または最適に近い制御アクションを決定する。生成された実行可能判断モジュールは、いくつかの実施形態および状況では、時間経過と共に様々な判断モジュールの各モデルを同期させることなどによって、ターゲットシステムのための自動化制御システムを共同で提供する複数の判断モジュールの制御アクションを調整するためのローカルCCD調整制御管理コンポーネントをさらに含むことができる。ブロック585の後、ルーチンはブロック590へと続き、使用のために生成された実行可能判断モジュールを提供し、任意選択で、後での実行および/または配置のためにそれらを記憶することを含む。
ブロック505で、ターゲットシステムのモデルに対するあり得る追加のために新しいソフトルールを学習するためにデータトモグラフコンポーネントを使用すると決定された場合、ルーチンは図5Cのブロック563へと続き、ターゲットシステムについての1つまたは複数の既存の生成されたモデル(たとえば、バイナリルールに基づく初期モデル)が取得される。ブロック565では、ルーチンは次いで、時間経過と共に(たとえば、1つまたは複数の既存の生成されたモデルによって制御される)ターゲットシステムの動作から実際の動作データを収集し、たとえば、以前に生成され記憶されたデータをストレージから取り出すこと、指定された量のデータが利用可能になるまで続くデータ収集段階に入ることなどを行う。ブロック565の後、ルーチンはブロック567へと続き、データトモグラフコンポーネントを使用して、収集されたデータからのデータモデルを繰り返し問い合わせて、達成すべき指定された目標に対応するターゲットシステムの1つまたは複数の出力などに関して、1つまたは複数のセンサおよび/または制御に対する変化する状況および値のもとでターゲットシステムの性能に関する回答を取得する。ブロック569では、ルーチンは次いで、たとえば全体的ハミルトン関数を構築するために、問い合わせ/回答ペアに基づいてシステムに関する全体的データモデルを作成する。ブロック571では、ルーチンは次いで、システムについてのルールベースのモデル(たとえば、ルールベースのハミルトン関数)を取得し、差異を識別するために全体的モデルとルールベースのモデルを比較し、これらを使用して、問い合わせに関係付けられたゼロ以上のあり得るソフトルールを作成する。
ブロック573では、ルーチンは次いで、たとえば、ブロック565から571の実行が、あり得るソフトルールに関して新しい情報を作成することを続けるかどうかに基づいて、各そのようなあり得るソフトルールに対する関連付けられた完全性値(completeness value)を決定する。そのようなあり得るソフトルールが十分に完全でない(たとえば、関連付けられた閾値を下回る完全性値を有する)場合、ルーチンはブロック567に戻り、追加の問い合わせを行いそうでない場合は、ブロック577へと続き、ターゲットシステムの改善された更新されたモデルで使用するために候補として十分に完全なあり得るソフトルールのいずれかを選択する。ブロック579では、ルーチンは次いで、既存モデルを自動的に更新するかどうかを決定し、更新する場合、ブロック581へと続き、学習された候補ソフトルールを使用し、既存のルールベースのモデルを更新し、その後にブロック585へと続く。そうでない場合は、ルーチンはブロック583へと続き、既存のモデルおよび/またはターゲットシステムに関連付けられた1つまたは複数のユーザに対して、学習された候補ソフトルールに関する情報を提供して、たとえば、ユーザがそれらを使用して既存のルールベースのモデルを更新するかどうかを可能にし、その後、ブロック505へと進む(たとえば、ブロック520に関連してそのような更新についてユーザからさらなる命令を受け取る)。
ブロック590の後、ルーチンはブロック595へと続き、継続するかどうかを決定し、たとえば停止する明示的インジケーションが受け取られるまで継続する。継続すると決定された場合、ルーチンはブロック505に戻り、そうでない場合はブロック599に進んで終了する。
図6Aないし図6Bは、実行されている判断モジュールの一般的表現に対応するルーチン600の例示的実施形態のフロー図を示す。ルーチンは、たとえば、判断モジュール329の実行によって、または図3の自動化制御システム325および/もしくは図1Aもしくは図1Bの判断モジュール124もしくは128の一部として提供されることができ、たとえば、判断モジュールについて符号化された情報またはモデルに固有の方式でターゲットシステムの少なくとも部分を制御するための機能性を提供し、判断モジュールによってその制御アクティビティ中に達成されるべき1つまたは複数の目標を反映することを含む。他の箇所でより詳細に論じられるように、いくつかの実施形態および状況では、複数の判断モジュールは、特定のターゲットシステムを制御するために共同で協調的に動作することができ、たとえば、各判断モジュールは、ターゲットシステムのための1つまたは複数の異なる制御要素を制御し、または他の形式でターゲットシステムの部分を表しもしくはそれと相互作用し、他の実施形態および状況では、単一の判断モジュールがターゲットシステムを制御するように単独で動作することができる。ルーチン600はさらに、特定の例示的判断モジュールによって実行されるアクションを、ターゲットシステムの部分を制御する際にそれが配置されたときに反映するが、判断モジュールの少なくとも部分の実行は、他の時間に行うことができ、図5Aないし図5CのCDD判断モジュール構築ルーチン500に関連してより詳細に論じられるように、たとえば、判断モジュールが配置される前に判断モジュールに関するモデルを初めにトレーニングする。
ルーチン600の示された実施形態はブロック610で始まり、ここでは、判断モジュールに関する初期モデルが決定され、初期モデルは、制御されるターゲットシステムの少なくとも部分、ターゲットシステムの制御に関係付けられた達成を試みる判断モジュールの1つまたは複数の目標、および任意選択でターゲットシステムの初期状態情報を記述する。ルーチンはブロック615へと続き、図5Aないし図5Cのブロック553および555に関連してより詳細に論じられるように、必要に応じて初期モデルをトレーニングするための1つまたは複数のアクションを行うが、いくつかの実施形態および状況では、ブロック615のそのようなトレーニングは、図5Aないし図5Cのルーチン500によって初期トレーニングがされない場合のみに行われ、他の実施形態および状況では、ブロック615のトレーニングは、判断モジュールが実行を開始したときに(たとえば、初期作成およびトレーニングの後に直ちに配置されない場合に)ターゲットシステムの現在の状態に関する情報を捕捉し、および/またはブロック630で開始される図7Aないし図7Bのルーチン700に関連してより詳細に論じられるように折に触れてモデルを再トレーニングするために行われる。
ブロック615の後、ルーチンはブロック617へと続き、判断モジュールの各制御アクション判断を行うために使用する時間期間を決定し、たとえば、ターゲットシステムにおける制御要素修正が必要とされる率を反映し、および/または制御要素の将来の操作を変更できる新しく来る状態情報が受け取られる率を反映する。次いで、ルーチンはブロック620へと続き、次の時間期間を開始し、これは、判断モジュールの実行の始動から前進する第1の時間期間から始まる。次いで、ブロック620ないし680が、判断モジュールの実行が中断または終了されるまで、そのような各時間期間が進むループで実行されるが、他の実施形態では、特定の判断モジュールが、その各実行の際には単一の時間期間のみで実行されることができる。
ブロック625では、ルーチンは、任意選択で、時間期間における状態情報を取得し、状態情報は、たとえば、最終の時間期間が始まってからターゲットシステムまたは1つもしくは複数の関係付けられた外部ソースに関して受け取られた、および/または必要に応じてターゲットシステムの1つもしくは複数の要素の現在の値または対応する変数を能動的に取り出すことによって受け取られた現在の状態情報である。ブロック630では、ルーチンは次いで、判断モジュールのローカルCCD制御アクション決定コンポーネントの実行を開始し、そのようなルーチンの一例は、図7Aないし図7Bのルーチン700に関連してより詳細に論じられる。ブロック635では、ブロック630におけるコンポーネントの実行の結果が受け取られ、現在の時間期間について判断モジュールが行うことができる1つまたは複数の提案された制御アクション決定を含む現在の時間期間および判断モジュールについてのローカル解を有する判断モジュールの更新されたモデルを取得するか、または、ブロック630におけるコンポーネントの実行の許容された時間において判断モジュールについてローカル解が見つけられなかったというインジケーションを受け取ることを含む。次いでブロック640で、解が見つけられたかどうかが決定され、見つけられた場合、ブロック642へと続いて、判断モジュールの更新されたモデルを記憶し、そうでない場合、ブロック643へと続き、判断モジュールの先行モデルを使用して、図7Aないし図7Bのルーチン700に関連してより詳細に論じられるように、以前のモデル(たとえば、状態情報の最近の変化および/または他の判断モジュールのアクティビティの最近の変化をあったとしても反映していない)に基づいて、現在の時間期間について提案された1つまたは複数の制御アクション決定を決定する。
ブロック642または643の後、ルーチンはブロック644へと続き、ローカル判断モジュールと同じ自動化制御システムの一部のような現在のターゲットシステムの部分を他の判断モジュールが共同で制御しているかどうかを決定し、そうしている場合はブロック645へと続く。そうでない場合は、ルーチンは、実行する最終の決定された制御アクションとして判断モジュールのローカルの提案された制御アクションを選択し、ブロック675へと続いて、現在の時間期間にそれらの制御アクションを実施する。
他の動作している判断モジュールがある場合、ブロック645においてルーチンは、判断モジュールのローカル解の提案された制御アクション決定を、同じターゲットシステムを共同で制御している他の判断モジュールのアクティビティと同期する際に使用するための、CDD調整制御管理(CCM)コンポーネントのローカルコピーを、ローカル判断モジュールが含むかどうかを決定する。含む場合、ルーチンはブロック647へと続き、判断モジュールの1つまたは複数の提案された制御アクション決定と、判断モジュールの対応する現在のローカルモデルとを、ローカルCDD CCMコンポーネントに提供し、そうでない場合、ブロック649へと続いて、判断モジュールの1つまたは複数の提案された制御アクション決定と、判断モジュールの対応するローカルモデルとを、1つまたは複数の集中化されたCDD CCMコンポーネントに提供する。
ブロック647または649の後、ルーチンはブロック655へと続き、ブロック647または649におけるCDD CCMコンポーネントのアクションの結果を取得し、さらに更新されたモデルが現在の判断モジュールに関する時間期間に行う1つまたは複数の最終制御アクション決定を示すように、現在の判断モジュールのローカルモデルと1つまたは複数の他の判断モジュールからの情報との同期によりもたらされる、さらに更新されたモデルを取得すること、または、そのような同期が許容された時間内に完成されなかったというインジケーションを取得することのいずれかを含む。ルーチンはブロック660へと続き、同期が完成されたかどうかを決定し、完成された場合、ブロック665へと続いて、同期によるさらに更新されたモデルを記憶し、そうでない場合、ブロック670へと続き、時間期間についての最終制御アクション決定として、判断モジュールに対してローカルに先行の提案された制御アクション決定を使用する。
ブロック665または670の後、ルーチンはブロック675へと続き、たとえば、値を修正するもしく他の形でターゲットシステムの1つもしくは複数の制御要素を操作するターゲットにおける1つもしくは複数のイフェクチュエータ(effectuator)と相互作用することによって、または他の形でそのような修正もしくは他の操作を生じさせるようにターゲットシステムに入力を提供することによって、ターゲットシステムに判断モジュールの1つまたは複数の最終の決定された制御アクションを実施する。ブロック680では、ルーチンは任意選択で、行われた制御アクションのターゲットシステムにおける結果に関する情報を取得し、そのような取得された結果に関する、および/または現在の時間期間の判断モジュールのアクティビティに関する情報を、CDDシステムに記憶および/または提供する。ブロック680の後、ルーチンはブロック682へと続き、学習されたソフトルールに基づいて可能な構造モデル適合更新を行うかどうかを決定し、これは、たとえば、定期的に、ブロック640に関連して解が見つけられたかどうかに基づいて、ブロック660に関連して同期が行われたかどうかに基づいて、または他に基づいて決定する。行う場合、ルーチンはブロック684へと続き、ブロック563ないし583におけるデータトモグラフコンポーネントに関連するCDD判断モジュール構築コンポーネントの動作を開始して、たとえば、モデルの更新されたバージョンおよび/または対応する判断モジュールを伴って戻る。
ブロック684の後、または学習されたソフトルールに基づいて可能な構造モデル適合更新を行わないとブロック682で決定された場合、ルーチンはブロック695へと続き、(たとえば、ターゲットシステムの現在の動作の終了、またはターゲットシステムの少なくとも部分を制御するための判断モジュールの使用の終了を反映するために)継続するかどうかを決定し、たとえば停止または中断するインジケーションが受け取られるまで継続する。継続すると決定された場合、ルーチンはブロック620に戻り、次の時間期間を開始し、そうでない場合はブロック699に進んで終了する。
図7Aないし図7Bは、CDD制御アクション決定ルーチン700の例示的実施形態のフロー図である。ルーチンは、たとえば、図3のコンポーネント344および/または図1Bのコンポーネント144aないしnもしくは184の実行によって提供されて、たとえば、特定の時間期間中にターゲットシステムに関して提案および/または実施する判断モジュールについての制御アクションを決定することができ、いくつかの実施形態では、可能な場合に1つまたは複数の目標に関して行う最適に近い(たとえば、最適解の閾値内の)アクションを決定するために最適化を行うことを含む。ルーチンの示された実施形態は、特定の判断モジュールにローカルな方式で実行され、したがって、一部または全部の判断モジュールは各々がそのようなルーチンのローカルバージョンを実施することができるが、他の実施形態では、ルーチンは、1つまたは複数の判断モジュールが1つまたは複数のネットワークを介して相互作用する1つまたは複数のコンポーネントによって、集中化された方式で実施されてよく、たとえば、特定の判断モジュールが、ローカル判断モジュールの代わりに動作するのではなく、特定の時間に使用されるように示される。
ルーチンの示された実施形態700はブロック703で始まり、ここでは、情報または要求が受け取られる。ルーチンはブロック705へと続き、情報または要求の種類を決定し、それに応じて進行する。具体的には、ローカル判断モジュールの現在のモデルが与えられたとして現在の時間期間についての解を決定することを試みる要求が、ブロック703で受け取られた場合、ルーチンはブロック710へと続き、ブロック710ないし790に関連してより詳細に論じられるようなアクティビティの実行を始める。そうではなく、ブロック760および765に関連してより詳細に論じられるように、ローカル判断モジュールの現在のモデルについて1つまたは複数のルールまたは他の制約を緩和する要求が受け取られたと、ブロック705で決定された場合、ルーチンはブロック765へと続く。ブロック775および780に関連してより詳細に論じられるように、ローカル判断モジュールの現在のモデルに対する1つまたは複数のルールまたは他の制約を修復する要求が受け取られたと、ブロック705で決定された場合、ルーチンはブロック780へと続き、(たとえば、CDD判断モジュール構築コンポーネントと相互作用するため、またはそうではなく別の方式で1つもしくは複数のユーザと相互作用するために)ルール修復プロセス中に使用するユーザ入力を取得して、たとえば、ローカル判断モジュールの現在のモデルが、さらに結果のユーザアクションに基づいて後で更新および置換されることを可能にし、または任意選択で、ターゲットシステムの動作が中断できる場合に、そのような更新されたモデルが受け取られるまでルーチン700をさらに実行するのを待つ。そうではなく、情報または要求が別の種類であるとブロック705で決定された場合、ルーチンは代わりにブロック708へと続き、適宜に1つまたは複数の他の示された動作を行い、次いでブロック799に進む。そのような他の示された動作は、たとえば、ローカル判断モジュールと共にターゲットシステムを共同で制御している1つまたは複数の他の判断モジュールによって提案または実行される現在のモデルおよび/または制御アクションに関する情報(たとえば、図8Aないし図8Bのルーチン800に関連してより詳細に論じられるように、コンセンサスまたは収束された共有モデルを生成することによって、そのような他の判断モジュールとローカル判断モジュールのモデルを同期する際に使用する)を受け取ること、ルーチン700の進行中の動作に使用するためのモデルまたはモデルの基礎となる情報に対する更新を(たとえば、CDD判断モジュール構築コンポーネントから、たとえば、ブロック780で行われた相互作用の結果を)受け取ること、図6Aないし図6Bのルーチン600で論じられたように使用するためなどに、ターゲットシステムの現在の状態情報を受け取ることなどを含むことができる。
現在の時間期間についてローカル判断モジュールの現在のモデルに基づいて解の要求がブロック703で受け取られたとブロック705で決定された場合、ルーチンはブロック710へと続き、ターゲットシステムの少なくとも部分のローカル判断モジュールの現在のモデルを表す結合された微分方程式の現在のセットを、任意選択で現在の時間についてのターゲットシステムの追加の状態情報と共に、受け取る。ルーチンは次いで、ブロック715へと続き、ブロック755、770、および730に関連してより詳細に論じられるように、たとえば、対応する判断モジュールの初期実行の際に初めて呼び出される場合、または進行中の動作からのエラー測定が再トレーニングの必要を示す場合に、モデルをトレーニングまたは再トレーニングするかどうかを決定する。トレーニングまたは再トレーニングすると決定された場合、ルーチンはブロック720へと続き、たとえば図5Aないし図5Cのルーチン500のブロック553に関連して先に論じられたのと同様の方式で、トレーニング時間窓のサイズ、時間窓内のトレーニング時間スライスのサイズ、および/またはトレーニング時間窓内のトレーニング時間スライスの種類のうちの1つまたは複数を決定する。ブロック720の後、ルーチンはブロック725へと続き、ターゲットシステムの部分的初期状態情報を使用してモデルをトレーニングし、図5Aないし図5Cのルーチン500のブロック555に関連してより詳細に論じられるように、時間スライスの各々について時間窓にわたって制御アクションを行う効果をシミュレートすることによって、知られていないおよび/または直接観測可能でないターゲットシステムについての状態変数の値を推定することを含む。
ブロック725の後、またはそうではなくモデルをトレーニングもしくは再トレーニングしないとブロック715で決定された場合、ルーチンはブロック730へと続き、区分線形解析を行って、ブロック710で取得された現在のモデルおよび任意の追加の状態情報の解を決定するように試み、解は(決定された場合、)現在の時間期間に行うべきローカル判断モジュールについての1つまたは複数の提案された制御アクション決定を含み、また、いくつかの実施形態では、他の箇所でより詳細に論じられるように、1つまたは複数のモデルエラーゲージを使用して、現在のモードに関して1つまたは複数のエラー測定を行う。ルーチンは次いでブロック735へと続き、ブロック730の動作に許容された量の時間(たとえば、現在の時間期間の定義されたサブセットまたは割合)内でブロック730の動作が解を決定したかどうかを決定し、解を決定した場合、ブロック740へと続き、解を反映するように、結合された微分方程式の現在のセット、およびローカル判断モジュールの結果の現在のモデルを更新し、結果の更新された情報はルーチン700の出力として提供される。
そうではなく、ブロック730の動作が解を決定しなかったとブロック735で決定された場合、ルーチンはブロック745で解を決定するさらなる試みのために追加の時間が現在の時間期間内で利用可能であるかどうかを決定し、利用可能でない場合、ブロック790へと続いて、現在の時間期間について解が決定されなかったことを示すルーチン700の出力を提供する。
他方、現在の時間期間内で追加の時間が利用可能である場合、ルーチンは続いてブロック755ないし780を実行して、解を識別するための1つまたは複数のさらなる試みを行う。さらなる解決定の試みを続けるために充分な時間が利用可能である場合、ブロック755ないし780の動作のうちの1つまたは複数が、与えられた時間期間において複数回繰り返し実行されることができることは理解されよう。具体的には、ルーチンは、追加の時間が利用可能であるとブロック745で決定された場合にブロック755へと続き、ここでは、それは、ブロック730に関連して論じられたゲージからのモデルエラー測定値などに基づいて、モデルに対する修正が必要とされることを示す1つまたは複数の閾値を超えるモデルエラー測定値を、1つまたは複数のゲージからの測定値が示すかどうかを決定する。示した場合、ルーチンはブロック760へと続き、(これが、現在の時間期間においてルートのこの部分の最初の通過ではない場合、時間期間中に以前に緩和されることが試みられていない)現在の時間期間について緩和されるべく利用可能な現在のモデルにおける1つまたは複数のルールまたは他の制約が存在するかどうかを決定し、存在する場合、ブロック765へと続き、1つまたは複数のそのようなルールまたは他の制約を緩和し、ブロック730に戻って、それらの緩和されたルールまたは他の制約に基づいて、改訂されたモデルを用いて区分線形解析を再試行する。
そうではなく、ゲージの1つまたは複数からのモデルエラー測定値が1つまたは複数の対応する閾値を満たすのに充分であるとブロック755で決定された場合、ルーチンは代わりにブロック770へと続き、そうするのに充分なエラーを示すゲージの1つまたは複数に基づいて、たとえばモデルに対する更新の1つまたは複数の時間期間にわたる蓄積されたエラーに基づいて、モデルを再トレーニングするかどうかを決定する。再トレーニングする場合、ルーチンはブロック720に戻って、ブロック720および725でそのような再トレーニングを行い、次いでブロック730へと続いて、結果の再トレーニングされたモデルを用いて区間線形解析を再試行する。
そうではなく、モデルを再トレーニングしないとブロック770で決定された場合(または、モデルが、現在の時間期間において既に再トレーニングされてブロック730の結果の再試行が解を見つけるのに再び失敗した場合)、ルーチンはブロック775へと続き、ゲージの1つまたは複数からのモデルエラー測定値が、修復される必要があるエラーを潜在的に有するモデルにおける1つまたは複数のルールまたは他の制約のサブセットを示すかどうかを決定する。示した場合、ルーチンはブロック780へと続き、CDD判断モジュール構築コンポーネントを介して1つまたは複数のユーザへ情報を提供して、ユーザが適宜にルールまたは他の制約を改訂することを可能にするが、他の実施形態では、そうではなく、一部または全部のそのようなルール修復アクティビティが、自動化された方式で試みられまたは行われる。ブロック780の後、またはそうではなく、どのルールも修復しないとブロック775で決定された場合、ルーチンはブロック790へと続き、現在の時間期間において解が決定されなかったというインジケーションを提供する。ブロック740、708、または790の後、ルーチンはブロック799に進んで終了する。そうではなく、ルーチン700が、ルーチンのための実行コンポーネントに対してリモートの1つまたは複数の判断モジュールをサポートする集中化されたルーチンとして実施された場合、ルーチン700は代わりにブロック703に戻って、さらなる情報または要求を待つことは理解されよう。
図8Aないし図8Bは、CDD調整制御管理ルーチン800の例示的実施形態のフロー図である。ルーチンは、たとえば、図3のコンポーネント346および/または図1Bのコンポーネント146aないしnの実行によって提供されて、たとえば、ターゲットシステムを共同で制御している複数の判断モジュールの間で現在のモデルおよびそれらの提案された制御アクションを同期しようと試みることができる。ルーチンの示された実施形態では、同期は、可能な場合にコンセンサス共有モデルで表されるパレート均衡を決定するパレートゲーム技法を使用して、1つまたは複数の他の判断モジュールの現在の状態に関する情報に基づく、特定のローカル判断モジュールに関する中間共有モデルと、その特定のローカル判断モジュールのローカルの現在のモデルとの間の対の方式で行われるが、他の実施形態では、他の種類の同期方法が使用されることができる。加えて、示された実施形態では、ルーチン800は、特定のローカル判断モジュールについてローカルな方式で行われ、たとえば、そのローカル判断モジュール内に含まれることによって行われるが、他の実施形態では、ルーチン800は、1つまたは複数の判断モジュールであって、そのルーチンのためのコンポーネントを実施するコンピューティングシステムからリモートであり、1つまたは複数のネットワークを介してそれらの判断モジュールと通信する、1つまたは複数の判断モジュールをサポートするように集中化された方式で実施されることができ、たとえば、特定の判断モジュールが、ローカル判断モジュールの代わりに動作するのではなく、特定の時間に使用されるように示される。
ルーチン800の示された実施形態は、ブロック805で始まり、ここでは、それが情報または別のインジケーションを受け取るのを待つ。ルーチンはブロック810へと続き、別の判断モジュールに関するコンセンサスモデルまたは他の更新された情報が受け取られたかどうかを、たとえばこの別の判断モジュールのために実行されるルーチン800のコピーから、決定し、受け取られた場合、ブロック815へと続き、ブロック830に関連してより詳細に論じられるように、ルーチン800の現在のコピーが代わりに実行されているローカル判断モジュールと共に使用するためのローカル中間共有モデル情報を、改訂された情報を使用して更新する。そうではなく、ブロック805で受け取られた情報または要求が1つもしくは複数の他の判断モジュールに関係付けられた情報でないとブロック810で決定された場合、またはブロック815の後で、ルーチンはブロック820へと続き、1つまたは複数の他の判断モジュールについての情報を含むローカル判断モジュールの中間共有モデルに関する情報を使用することによって、ローカル判断モジュールの現在のローカルモデルについての同期を現在行うかどうかを決定し、たとえば、ブロック805で(たとえば、その判断モジュールに対してローカルなCDD制御アクション決定コンポーネントのコピーについてのルーチン700の動作に基づいて)ローカル判断モジュールのモデルに対する更新が受け取られるたびに、および/または、ローカル判断モジュールの中間共有モデルを更新する情報がブロック805で受け取られブロック815で使用され、もしくは代わりにブロック805で明示的に示されるたびに、そのような同期を行う。同期が現在実行されるべき場合、ルーチンはブロック825へと続き、そのような同期アクティビティに関係付けられたブロック820ないし880の実行を始める。そうでない場合は、ルーチンはブロック885へと続き、適宜に1つまたは複数の他の示された動作を行って、たとえば、ルーチン800の動作に関する現在の情報を求めるCDDシステムもしくは他の要求元からの要求を受け取り、および/または(たとえば、先行の要求を反映するために)対応する情報を1つまたは複数のエンティティに提供する。
ブロック805で受け取られた更新されたモデルに関係付けられた情報などに基づいて、同期が現在行われるべきとブロック820で決定された場合、ルーチンはブロック825へと続き、同期の際に使用するローカル判断モジュールについての現在のローカルモデルを取得し、このモデルは、ローカル判断モジュールに関するローカル解に基づく現在の時間期間において行う1つまたは複数の提案された制御アクションを含む。ルーチンは次いで、ブロック830へと続き、ターゲットシステムの制御に共同して参加している1つまたは複数の他の判断モジュール(たとえば、すべての他の判断モジュール)についての情報を表すローカル判断モジュールの中間共有モデルについての情報を取り出し、その中間共有モデルは、それらの1つまたは複数の他の判断モジュールのローカル解によりもたらされる1つまたは複数の他の提案された制御アクションを同様に表し、任意選択で、部分的または完全な同期がそれらの他の判断モジュールについてそれら自体の間で行われた後に取り出しをする。
ルーチンは次いで、ブロック835へと続き、ローカル判断モジュールの現在のモデルと中間共有モデルとの両方に解を同時に提供することによって、ローカル判断モジュールの現在のモデルと中間共有モデルとを同期するコンセンサス共有モデルを決定しようと試みる。いくつかの実施形態では、ブロック835の動作は、ローカルモデルと中間共有モデルが組み合わされて、1つまたは複数の解が識別されるべき組み合わせモデルを作成する場合などに、図7Aないし図7Bのルーチン700のブロック710ないし730に関連して論じられたのと同様の方式で行われる。他の箇所でより詳細に論じられるように、いくつかの実施形態では、ローカルな現在のモデルおよび中間共有モデルは各々が、ハミルトン関数によって表され、それぞれのハミルトン関数について加法方式でそのような組み合わされたモデルの簡単な作成を可能にし、図6Aないし図6Bおよび図7Aないし図7Bのルーチン600および/または700の動作はそれぞれ、そのようなハミルトン関数を使用してそれらが更新および他の形で操作するモデルを同様に表す。
ブロック835の後、ルーチンはブロック840へと続き、同期が行われるように試みられる現在の時間期間の断片または他の部分などの許容される時間の量においてブロック835の動作が成功したかどうかを決定し、成功した場合、ルーチンはブロック845へと続き、コンセンサス共有モデルを反映するようにローカル判断モジュールのローカルモデルおよび中間共有モデルの両方を更新する。前述されたように、集合的グループの1つまたは複数の他の判断モジュールを表す中間共有モデルを変更すると共に、各判断モジュールがコンセンサス共有モデルを繰り返し決定するために充分な時間が許容される場合、集合的グループの判断モジュールは、最終的に単一の収束された共有モデルに収束することができるが、他の実施形態および状況では、そのような収束が生じるのに充分な時間が存在しないことがあり、または他の問題がそのような収束を妨げることがある。ブロック845の後、ルーチンはブロック850へと続き、任意選択で、ローカル判断モジュールについて決定されたコンセンサス共有モデル(および/または、835の動作が収束された共有モデルを作成する最後のステップであった場合のそのような収束された共有モデル)を他の判断モジュールに通知し、たとえば、通知される各判断モジュールがルーチン800のそれ自体のローカルバージョンを実施しており、提供される情報は、現在のローカル判断モジュールの新しく構築されたコンセンサス共有モデルからの情報を含むそれら他の判断モジュールの中間共有モデルの一部として使用される場合に、そのように通知する。
そうではなく、許容された時間内で同期が発生しなかったとブロック840で決定された場合、ルーチンは続いてブロック860ないし875を実行して、図7Aないし図7Bのルーチン700のブロック745ないし780に関連して論じられたのと同様の方式で、1つまたは複数の修正との同期を再試行し、充分な時間が利用可能である場合は繰り返し再試行することがある。示された例では、ルーチンは、同期の1つまたは複数のそのような再試行に追加の時間が利用可能であるかどうかをブロック860で決定し、利用可能でない場合、ルーチンはブロック880へと続き、許容された時間内で同期が行われなかったというインジケーションを提供する。さもなければ、ルーチンはブロック870へと続き、ローカル判断モジュールの現在のモデルおよび/またはローカル判断モジュールの中間共有モデルでその情報が表される1つもしくは複数の他のモジュールの一方または両方に関して、ルールもしくは他の制約を緩和すること、ルールもしくは他の制約を修復すること、および/またはモデルを再トレーニングすることのうちの1つまたは複数を実行するために1つまたは複数のアクションを行う。このように進行するとブロック870で決定された場合、ルーチンはブロック875へと続き、往々にしてルーチン700に関連して論じられたのと同様の方式で1つずつ、対応するアクションを行い、ローカル判断モジュールの現在のモデルおよび/またはローカル判断モジュールのローカル中間共有モデルに対して結果の更新を生じることを含み、その後、ルーチンはブロック835に戻って、ローカル判断モジュールのローカルモデルと中間共有モデルの同期を再試行する。
そうではなく、緩和、修復、および/または再トレーニングに関してさらなるアクションが行われないとブロック870で決定された場合、ルーチンは代わりにブロック880へと続く。ブロック850、880、または885の後、ルーチンはブロック895へと続き、継続するかどうかを決定し、たとえばルーチン800の動作を停止または中断する明示的インジケーションが受け取られるまで継続し、たとえば、ターゲットシステムの動作の終了、ならびに/またはターゲットシステムを制御するためのローカル判断モジュールおよび/もしくは複数の判断モジュールの集合的グループの使用の終了を反映するようにする。継続すると決定された場合、ルーチンは805に戻り、そうでない場合はブロック899で終了する。
図9は、ターゲットシステムとターゲットシステムの少なくとも部分を制御している1つまたは複数の判断モジュールとの間の相互作用に関して、代表的な一般的ターゲットシステムについて実行されるルーチン900の例示的実施形態のフロー図を示す。ルーチンは、たとえば、図3のターゲットシステム360および/もしくは370ならびに/または図1Aおよび図1Bのターゲットシステム160および/もしくは170の実行によって提供されて、たとえば、ターゲットシステムに固有の動作を実施することができる。ルーチンの示された実施形態は、1つまたは複数の判断モジュールとターゲットシステムの相互作用に焦点を当てていること、ならびに、多くまたはすべてのそのようなターゲットシステムが、簡潔にするためにここでは示されていないそれらのターゲットシステムに固有の方式で多くの他の動作を行うことは理解されよう。
ルーチンはブロック910で始まり、ここでは、それが、任意選択で、ターゲットシステムについてのCDDシステムの自動化制御システムにおいて使用するためのターゲットシステムの初期状態情報をCDDシステムに提供し、たとえば、CDDシステムもしくはターゲットシステムのためのその自動化制御システムからの要求に応答して、またはそうではなく(たとえば、ターゲットシステムの始動時に実行されるように)ターゲットシステムに固有の構成に基づいて提供する。ブロック910の後、ルーチンはブロック920へと続き、ターゲットシステムのための自動化制御システムを実施する1つまたは複数の判断モジュールの集合的グループからの1つまたは複数の入力を受け取り、そのような入力は、自動化制御システムのそのような判断モジュールによって実行されるターゲットシステムの複数の要素の1つまたは複数の制御要素についての1つまたは複数の修正された値または他の操作を含む。他の箇所でより詳細に論じられるように、ブロック920、930、940は、複数の時間期間の各々について繰り返し実行されることができ、それは、ターゲットシステムに応じて時間が大きく異なることがある(たとえば、マイクロ秒、ミリ秒、秒の100分の1、秒の10分の1、1秒、2秒、5秒、10秒、15秒、30秒、1分、5分、10分、15分、30分、1時間など)。
ブロック920の後、ルーチンはブロック930へと続き、受け取られた入力に基づいてターゲットシステムにおいて1つまたは複数のアクションを行い、任意選択で、制御要素の操作に基づいてターゲットシステム内で1つまたは複数の結果の出力または他の結果を生成することを含む。ブロック940では、ルーチンは次いで、任意選択で、ターゲットシステム内の出力もしくは他の結果に関する情報、および/またはターゲットシステムに関する他の現在の状態情報を、CDDシステムの自動化制御システム、および/または自動化制御システムの特定の判断モジュールに提供する。ルーチンは次いで、ブロック995へと続き、継続するかどうかを決定し、たとえばターゲットシステムの動作を停止または中断する明示的インジケーションが受け取られるまで継続する。継続すると決定された場合、ルーチンはブロック920に戻って、次の時間期間についての次のセットの制御アクションを始め、そうでない場合はブロック999に進んで終了する。他の箇所でより詳細に論じられるように、特定の判断モジュールに提供される状態情報は、外部システムからターゲットシステムへの要求を含むことができ、自動化制御システムおよびその判断モジュールは、その要求にどのように応答するかを1つまたは複数の方式で決定することができる。
図12Bは、より大きなターゲットシステムの一部としてバッテリを制御する実施形態を示し、この例では、そのターゲットシステムは、ソーラーパネルを含む家庭電力システムを含むシステム1250であり、したがって、図2Aおよび/または本明細書の他の箇所に関連して先に論じられた例示的実施形態が、いくつかの状況では、例示的システム1250のような、より大きなシステムの一部として使用されることができる。具体的には、図12Bのブロック図は、ソーラー電力が生成されている家庭電力システムの一部であるバッテリからのDC電力の自動化制御を行うためのシステム1250の実施形態の例示的コンポーネントを示し、自動化制御は、たとえば、リアルタイム方式で、および/またはバッテリの長期動作を最適化するように行われ、家庭の発電および電力使用が、外部エンティティによって、たとえば、システム1250のバッテリを制御するために1つまたは複数のCDIエージェントを提供または管理するエンティティによって監視および同期される。図12Bの例では、例示的な家庭の電力システムが、外部電気グリッドにも接続され、それは、様々な時間に外部電気グリッドから電力を受け取り、また電力を提供し、バッテリは、ソーラー電力システムによって生成された電力を貯蔵し、電力を適宜に住宅および/または電気グリッドに供給する役割をする。
図12Bの示された例では、バッテリ210、ハードウェアセンサモジュール220、バッテリ用アクチュエータ230、オンサイトバッテリ追跡コントローラ240などを含む、図2Aのコンポーネントと同様のコンポーネントが引き続き示されている。しかしながら、図12Bの例では、図2AのCDIエージェント250は、例示的住宅の物理的位置に存在するコンポーネントの一部として示されておらず、これは、たとえば、図12Bに関して使用されているCDIエージェント250は、代わりに遠隔位置(たとえば、クラウドまたは他のコンピュータネットワーク位置)で実行され、図2Aに関して示されたのと同様の方式で追跡および/または同期信号を図12Bのバッテリ追跡コントローラ240に提供する場合である。そのような追跡および/または同期信号は、たとえば、現在の時間または直後の時間のバッテリの所望の電力出力および/または所望のバッテリパラメータ(たとえば、内部温度、電圧、電流など)を含むことができる。加えて、本明細書の他の箇所でより詳細に論じられるように、CDIエージェントは、バッテリ210(および制御されている任意の他のバッテリ)に関する監視された情報、外部電気グリッドを管理するユーティリティからの電力要求、使用される定義された制約条件または他のルール、予測された電力に関係付けられた値などに基づいて、そのような追跡および/または同期信号を生成することができる。
加えて、いくつかの追加のコンポーネントが図12Bに示されており、これらのコンポーネントはバッテリからの出力電力を受け取り、および/または貯蔵のためにバッテリへ電力を供給するインバータ/整流器モジュール1210、電力を生成し、自身の関連付けられたハードウェアセンサおよびインバータを有するソーラーパネル1220、外部電気グリッドに対する電力の受け取りおよび/または供給をし、住宅用の負荷1240への配電を制御する配電箱1230などを含む。加えて、図12Bのバッテリ追跡コントローラ240の動作を制御するのを支援するための2つのローカル制御エージェント1260および1270が示されており、エージェント1 1260は、バッテリ追跡コントローラと直接的に相互作用し、エージェント2 1270は、バッテリのための電力のAC相を住宅電力システムおよび/またはグリッドのそれと同期することを含むアクティビティを行って、たとえば、受け取られおよび/または提供されている電力の共鳴を提供する。バッテリ追跡コントローラ240ならびにエージェント1260および1270(ユーティリティセンサプロセッサ以外)は、この例では一緒に「制御プロセッサ」と呼ばれ、バッテリ追跡コントローラは、システムステータス更新を提供し、エージェント間の通信は、そのようなマルチエージェントアーキテクチャをサポートするように管理される。エージェント2のトモグラフは、たとえば、物理的対象物の内部物理構造に関する情報を取得するために非破壊X線を使用することに類似した方式でセンサ情報を取得および使用することによって、本明細書の他の箇所に説明されているように、バッテリ状態の動的変化を追跡し、対応するモデル化された状態情報を生成するために使用されてよい。加えて、外部エンティティ1280(たとえば、外部電気グリッドを提供または管理するユーティリティ)が、この例では監視および同期信号をバッテリ追跡コントローラ240に提供し、たとえば、多数のそのような家庭電力システムおよび/または他のカスタマを介して使用および/または提供されている電力を調整する。
図12Bの例ではソーラーパネルシステムにおけるバッテリ210の使用を伴うが、バッテリは様々な種類の環境およびシステムで充電および/または放電されることができ、対応するCDIエージェントの同様のアクティビティが、本明細書に説明されている方式でそのようなアクティビティを制御するために使用できることは理解されよう。
図12Aは、たとえばリアルタイム方式でバッテリの長期動作を最適化するように、調整された方式で複数のバッテリからのDC電力の自動化制御を行うシステム1200の実施形態の例示的コンポーネントを示すブロック図である。具体的には、図12Aのシステム1200は、図12Bのそれといくつかの類似点を有するが、多数のバッテリおよび関連付けられたシステム(たとえば、この例では、たとえば1つまたは複数の地域、州、国などに対応する、百万個を超えるそのようなバッテリおよび関連付けられたシステム)の調整された制御をサポートするためのシステムの例示的アーキテクチャを示す。具体的には、示された例では、オンサイトバッテリ追跡コントローラを有する様々なバッテリおよび関連付けられたシステム1205(たとえば、ソーラーパネルを有する家庭電力システム)が、バッテリおよび関連付けられたシステム1205についての電力要求を提供する1つまたは複数のユーティリティ1285、ならびにバッテリおよび関連付けられたシステム1205についての分散制御システム1275を管理するためのシステム管理の役割をする1つまたは複数のエンティティ1290と共に示される。この例示的実施形態では別個のトモグラフコンポーネントは示されていないが、それらは、たとえば、クラスタ内のCDIエージェントのような1つまたは複数の他のコンポーネントの一部として動作することができる。
この例では、分散制御システム1275は、オンラインコンピューティング環境(たとえば、Microsoft Azure)を介するなどして、ネットワークアクセス可能な位置に集中化された方式で実施されるが、それは他の実施形態では他の方式で実施されることもできる。分散制御システム1275は、ユーティリティ1285とインターフェースをとって相互作用する1つまたは複数のコンポーネント、バッテリおよび関連付けられたシステム1205とインターフェースをとって相互作用する1つまたは複数のコンポーネント、ならびに、分散制御システム1275を監視および/または制御するためにシステム管理エンティティ1290が相互作用することができる1つまたは複数の監視および/または構成コンポーネントを含む。加えて、バッテリおよび関連付けられたシステム1205をサポートする様々なCDIエージェント(たとえば、バッテリパックおよび関連付けられたシステム当たり1つのCDIエージェント)が、ネットワークアクセス可能位置で実行され、一緒にクラスタ化され、様々なクラスタ間通信機構(たとえば、様々なトピックを有するパブリッシュ/サブスクライブシステム、少なくともいくつかのCDIエージェントおよび/またはクラスタの間の通信サービスバスなど)が使用される。クラスタは、様々な実施形態において様々な方式で形成され、たとえば、地理的位置(たとえば、システム電気グリッド変電所領域の一部である)および/または動作特性のような1つまたは複数の特性を共有する関連付けられたバッテリおよびシステムを有することに基づいて、CDIエージェントをグループ化することができる。加えて、クラスタは、段階的および/または階層的にCDIエージェントを調整するために使用され、たとえば、まずクラスタ内でCDIエージェントを調整し、次いで、2つ以上のクラスタ間などで、また任意選択で(たとえば、階層的に構造化された)複数の層のクラスタを用いて調整することができる。様々な追加のコンポーネントが、分散制御システム1275の一部として提供され使用され、たとえば、サイト管理システムが、CDIエージェントならびに/またはバッテリおよび関連付けられたシステムの変化を管理し(たとえば、新しいバッテリシステムのための新しいCDIエージェントを追加し、および/またはシステム1275管理から除去されている既存のバッテリシステムのための既存のCDIエージェントを除去する;新しいCDIエージェントを特定のクラスタに追加し、および/またはクラスタから既存のCDIエージェントを除去する;クラスタを作成、除去、および修正するなど)、ネットワークアクセス可能位置から利用可能な記憶サービスが、使用される状態および他の情報を記憶および交換し、ネットワークアクセス可能位置から利用可能なリソース管理サービスが、ネットワークアクセス可能位置によって提供されるコンピューティングリソースを管理することなどができる。
本明細書に説明された非限定的な例示的実施形態が以下の項でさらに論じられる。
1.コンピュータ実施方法であって、
1つまたは複数の構成されたコンピューティングシステムによって、複数のセンサと1つまたは複数の制御と1つまたは複数の出力とを有する指定された種類の物理システムの動作をモデル化するバイナリルールのセットを受け取るステップであって、各センサは、前記指定された種類の物理システムの前記動作に関係付けられた少なくとも1つの種類の状態情報を測定し、各制御は、前記指定された種類の物理システムの少なくとも1つの出力を修正するように操作可能であり、前記バイナリルールは、前記1つまたは複数の制御を操作するために行う制御アクションの結果に関する真値または偽値に達するように評価される状態情報を含む条件を指定する、ステップと、
構成されたコンピューティングシステムによって、時間の期間にわたって前記指定された種類のターゲット物理システムの実際の動作を記述するデータを取得するステップであって、前記データは、前記時間の期間中の複数の時間の各々について、前記ターゲット物理システムに関する前記時間における前記センサの値、および前記時間についての前記ターゲット物理システムに関する前記制御を操作するために行われる1つまたは複数の制御アクションの値、および前記時間についての前記1つまたは複数の制御アクションの結果として生じる前記ターゲット物理システムからの前記出力の値、についての情報を含む、ステップと、
構成されたコンピューティングシステムによって、前記取得されたデータから、前記ターゲット物理システムの前記実際の動作を表わすデータモデルを生成するステップと、
構成されたコンピューティングシステムによっておよび前記生成されたデータモデルから、前記ターゲット物理システムの前記実際の動作をさらにモデル化する1つまたは複数のソフトルールを自動的に学習するステップであって、各ソフトルールは、関連付けられた可能性を有する真値または偽値以外の複数の可能性のある値のうちの1つに達するように評価される1つまたは複数の追加の条件を指定し、前記学習するステップは、
前記データモデルに問い合わせて、前記ターゲット物理システムの1つまたは複数のセンサが複数の値の各々を有する指定された状況における前記ターゲット物理システムの前記実際の動作からの結果を取得するステップ、
前記データモデルの前記問い合わせから取得された前記結果とバイナリルールの前記セットからの前記指定された状況の他の期待された結果との間の差異を決定するステップ、および
前記決定された差異を表わすように前記1つまたは複数のソフトルールを構築するステップ
を含み、
前記1つまたは複数の構成されたコンピューティングシステムによって、前記ターゲット物理システムのさらなる制御に使用するために、前記学習された1つまたは複数のソフトルールについての情報を提供するステップと
を含むことを特徴とするコンピュータ実施方法。
2. 1つまたは複数の構成されたコンピューティングシステム上で実行している協働分散判断システムによって、前記ターゲット物理システムの少なくとも1つのセンサについての現在の状態情報を識別するセンサ情報を取得するステップと、
前記協働分散判断システムによって、少なくとも前記バイナリルールと前記取得されたセンサ情報と前記指定された種類の物理システムに関する指定された目標とから、結合された微分方程式を含む前記ターゲット物理システムの現在の状態を記述するモデルを作成するステップと、
前記協働分散判断システムによっておよび前記作成されたモデルに基づいて、前記結合された微分方程式の区分線形解析を実行して、前記ターゲット物理システムの少なくとも1つの制御を操作しおよび前記目標に対する解を提供する、少なくとも1つの制御アクションを識別するステップと、
前記ターゲット物理システムにおいて前記少なくとも1つの制御アクションの実施を開始して、前記少なくとも1つの制御を操作し、前記ターゲットシステムの少なくとも1つの出力の、結果の変化を引き起こすステップと
をさらに含むことを特徴とする項1に記載のコンピュータ実施方法。
3. ターゲット物理システムは、少なくとも電気負荷および少なくとも1つの電源を含み、制御は、バッテリからエネルギーの指定された量を供給させる、またはバッテリによりエネルギーの指定された量を受け取らせるように命令を提供することを含み、出力は、バッテリへまたはバッテリから提供されるエネルギーを含み、指定された種類のターゲット物理システムに対して指定された目標は、指示された基準に従ってバッテリからエネルギーを供給しながらバッテリの寿命を最大限にすることであることを特徴とする項2に記載のコンピュータ実施方法。
4. ターゲット物理システムは、建物を含み、建物は、複数の部屋と、建物の部屋の暖房および冷房のうちの少なくとも一方を行うための1つまたは複数の温度制御ユニットとを有し、制御は、温度制御ユニットから暖房および冷房のうちの少なくとも一方の指定された量を供給することを引き起こすように命令を提供することを含み、出力は、温度制御ユニットから供給される暖房および冷房のうちの少なくとも一方を含み、指定された種類のターゲット物理システムに対して指定された目標は、温度制御ユニットにより使用されるエネルギーの量を最小限にして、指示された基準に従って建物の部屋に対する暖房または冷房のうちの少なくとも一方を行うことである項2に記載のコンピュータ実施方法。
5.学習された1つまたは複数のソフトルールに関する情報の提供ステップは、協働分散判断システムによって、学習された1つまたは複数のソフトルールの表現を含むように作成されたモデルを自動的に更新するステップと、更新された作成されたモデルを使用して、ターゲット物理システムにおける1つまたは複数の追加の制御アクションを決定して行うステップとを含むことを特徴とする項2に記載のコンピュータ実施方法。
6.モデルの作成ステップは、前記データの前記取得ステップの前に実行され、さらに、前記指定された種類の物理システムの前記動作をモデル化するために受け取られた1つまたは複数の初期ソフトルールに一部基づいて、前記ターゲット物理システムに対する1つまたは複数の構造的修正が、前記モデルの前記作成するステップと前記データの前記取得するステップとの間に行われ、前記1つまたは複数のソフトルールの前記自動的に学習するステップは、前記1つまたは複数の修正に関係付けられた少なくとも1つの追加のソフトルールを学習するステップを含み、前記作成されたモデルの前記自動的に更新するステップは、前記作成されたモデルを前記1つまたは複数の構造的修正を表わすように適合させるステップを含むことを特徴とする項5に記載のコンピュータ実施方法。
7. バイナリルールのセットの受け取りステップは、1つまたは複数の構成されたコンピューティングシステムによって、ターゲット物理システムのモデルを構築しているユーザからバイナリルールのセットの受け取ることを含み、学習された1つまたは複数のソフトルールに関する情報の提供ステップは、ターゲット物理システムのモデルのさらなる構築に使用するために情報をユーザに提供するステップを含むことを特徴とする項1に記載のコンピュータ実施方法。
8.1つまたは複数のソフトルールの学習するステップは、
前記1つまたは複数の構成されたコンピューティングシステムによって、前記データモデルの前記問い合わせから取得された前記結果を表す全体的ハミルトン関数を生成するステップと、
前記1つまたは複数の構成されたコンピューティングシステムによって、および前記バイナリルール上の少なくとも一部基づいて、前記指定された種類の物理システムのルールベースのモデルを表すバイナリルールベースのハミルトン関数を生成するステップと
をさらに含み、
前記差異の前記決定ステップは、前記1つまたは複数の構成されたコンピューティングシステムによって、前記全体的ハミルトン関数と前記バイナリルールベースのハミルトン関数との間の差異を表わすソフトルールベースのハミルトン関数を生成するステップを含み、前記1つまたは複数のソフトルールの前記構築するステップは、前記1つまたは複数の構成されたコンピューティングシステムによって、前記ソフトルールベースのハミルトン関数の自然対数を実行するステップを含むことを特徴とする項1に記載のコンピュータ実施方法。
9.差異の決定するステップは、前記1つまたは複数の構成されたコンピューティングシステムによって、前記ソフトルールベースのハミルトン関数を表わすために1つもしくは複数のスプラインまたは1つもしくは複数の区分多項式関数のうちの少なくとも1つを決定することによって前記ソフトルールベースのハミルトン関数を近似するステップをさらに含むことを特徴とする項8に記載のコンピュータ実施方法。
10. データの取得するステップは、前記時間の期間中の複数の追加の時間の各々について、前記ターゲット物理システムに関する前記追加の時間での前記センサの値、および前記追加の時間についての前記ターゲット物理システムからの前記出力の値、についての追加の情報を取得するステップをさらに含み、前記取得されたデータの前記生成ステップはさらに、前記取得された追加の情報上の一部に基づくことを特徴とする項1に記載のコンピュータ実施方法。
11. 1つまたは複数のソフトルールの学習するステップは、
前記データモデルの前記問い合わせから取得された前記結果が前記1つまたは複数のソフトルールの前記関連付けられた可能性に関する閾値を満たすのに十分な情報を提供しないと決定するステップと、
追加の結果が、前記1つまたは複数のソフトルールの前記関連付けられた可能性に関する前記閾値を満たすのに十分な情報を提供するまで、前記データモデルのさらなる問い合わせを行って、前記ターゲット物理システムの前記実際の動作から前記追加の結果を取得するステップと
をさらに含み、
前記決定された差異は、前記データモデルからの前記追加の結果とバイナリルールの前記セットからの追加の期待される結果との間の差異をさらに含むことを特徴とする請1に記載のコンピュータ実施方法。
12. 1つまたは複数のソフトルールの学習するステップは、
前記結果を取得する前記データモデルの前記問い合わせの前に、前記データモデルの他の問い合わせを実行して、前記ターゲット物理システムの1つまたは複数のセンサが複数の他の値の各々を有する、他の指定された状況における前記ターゲット物理システムの前記実際の動作からの初期の結果を取得するステップと、
前記データモデルの前記問い合わせから取得された前記結果が、閾値を満たす前記初期の結果に対して新しい情報を提供すると決定するステップと、
前記データモデルのさらなる問い合わせを行って、追加の結果が、前記閾値を満たすために先行の結果に対して十分に新しい情報を提供しなくなるまで、前記追加の結果を前記ターゲット物理システムの前記実際の動作から取得するステップと
をさらに含み、
前記決定された差異は、前記データモデルからの前記追加の結果とバイナリルールの前記セットからの追加の期待される結果との間の差異をさらに含むことを特徴とする項1に記載のコンピュータ実施方法。
13. 前記1つまたは複数の構成されたコンピューティングシステムによって、第2の時間の期間にわたって前記指定された種類の第2のターゲット物理システムの実際の動作を記述する第2のデータを取得するステップであって、前記データは、前記第2の時間の期間中の複数の時間の各々について、前記第2のターゲット物理システムに関する前記時間での前記センサの値、および前記時間についての前記第2のターゲット物理システムに関する前記制御を操作するために行われる1つまたは複数の制御アクションの値、および前記時間についての前記1つまたは複数の制御アクションの結果として生じる前記第2のターゲット物理システムからの前記出力の値、についての情報を含む、該ステップと、
前記1つまたは複数の構成されたコンピューティングシステムによっておよび前記取得されたデータから、前記第2のターゲット物理システムの前記実際の動作を表わす第2のデータモデルを生成するステップと、
前記1つまたは複数の構成されたコンピューティングシステムによっておよび前記生成された第2のデータモデルから、前記第2のターゲット物理システムの前記実際の動作をさらにモデル化する1つまたは複数の第2のソフトルールを自動的に学習するステップであって、前記1つまたは複数の第2のソフトルールは、前記ターゲット物理システムに関する前記学習された1つまたは複数のソフトルールと異なり、前記ターゲット物理システムと前記第2のターゲット物理システムとの間の差異を反映する、該ステップと、
前記1つまたは複数の構成されたコンピューティングシステムによって、前記第2のターゲット物理システムのさらなる制御に使用するために、前記学習された1つまたは複数の第2のソフトルールについての情報を提供するステップと
をさらに含むことを特徴とする項1に記載のコンピュータ実施方法。
14. セットのバイナリルールは、指定された種類の物理システムの動作に関する要件である修正不可能な制約を指定する1つまたは複数の絶対的ルールを含み、指定された状況で修正されることができる指定された種類の物理システムの動作に関する制約を指定する1つまたは複数のハードルールをさらに含むことを特徴とする項1に記載のコンピュータ実施方法。
15. ソフトウェア命令を記憶した非一時的コンピュータ可読媒体であって、ソフトウェア命令は、実行されたとき、自動化制御システムの少なくとも一部を実施する1つまたは複数のデバイスに、項1ないし14のいずれか一項に記載の方法を実施させることを特徴とする非一時的コンピュータ可読媒体。
16. システムであって、
1つまたは複数のデバイスの1つまたは複数のハードウェアプロセッサと、
命令を記憶する1つまたは複数のメモリと
を備え、命令は、1つまたは複数のハードウェアプロセッサのうちの少なくとも1つによって実行されたとき、システムに、項1ないし14のいずれか一項に記載の方法を実施させることを特徴とするシステム。
17. 1つまたは複数のコンピューティングシステムに動作を行わせるコンテンツを記憶した非一時的コンピュータ可読媒体であって、前記動作は、
前記1つまたは複数のコンピューティングシステムによって、センサと1つまたは複数の制御と1つまたは複数の出力とを有するターゲットシステムの動作をモデル化するバイナリルールを受け取ることであって、前記センサは、前記ターゲットシステムの要素の物理的状態に関する情報を測定し、少なくとも1つの制御は、前記ターゲットシステムの少なくとも1つの出力を修正するように操作可能であり、前記バイナリルールは、前記1つまたは複数の制御を操作するために行う制御アクションの結果に関する真値または偽値に達するように評価される状態情報を含む条件を指定する、該受け取ることと、
前記1つまたは複数のコンピューティングシステムによって、時間の期間にわたって前記指定された種類のターゲットシステムの実際の動作を記述するデータを取得することであって、前記データは、前記時間の期間中の複数の時間の各々について、前記ターゲットシステムに関する前記時間でのセンサ値、および前記時間についての前記ターゲットシステムに関する前記制御を操作する1つまたは複数の制御アクション、および前記時間についての前記ターゲットシステムからの1つまたは複数の出力、についての情報を含む、該取得することと、
前記1つまたは複数のコンピューティングシステムによって、前記取得されたデータから、前記ターゲットシステムの前記動作をさらにモデル化する1つまたは複数のソフトルールを自動的に学習することであって、各ソフトルールは、関連付けられた可能性を有する真値または偽値以外の可能性のある値に達するように評価される1つまたは複数の追加の条件を指定し、前記学習することは、
問い合わせを行って、前記ターゲットシステムの1つまたは複数のセンサが複数の値の各々を有する指定された状況における前記ターゲットシステムの前記動作に関する前記取得されたデータから結果を取得すること、
前記問い合わせから取得された前記結果と前記バイナリルールからの前記指定された状況の他の期待された結果との間の差異を決定すること、および
前記決定された差異を表わすように前記1つまたは複数のソフトルールを構築すること
を含み、
前記1つまたは複数のコンピューティングシステムによって、前記ターゲットシステムのさらなる制御に使用するために、前記学習された1つまたは複数のソフトルールについての情報を提供することと
を含むことを特徴とする非一時的コンピュータ可読媒体。
18. 記憶されたコンテンツは、実行されたとき、1つまたは複数のコンピューティングデバイスに、項1ないし14の1つまたは複数の任意の組み合わせの方法をさらに実施させる記憶されたソフトウェア命令であることを特徴とする項17に記載の非一時的コンピュータ可読媒体。
19. システムであって、
1つまたは複数のコンピューティングシステムの1つまたは複数のハードウェアプロセッサと、
命令を記憶する1つまたは複数のメモリと
を備え、前記命令は、前記1つまたは複数のハードウェアプロセッサのうちの少なくとも1つによって実行されたとき、前記システムに、
センサと1つまたは複数の制御と1つまたは複数の出力とを有するターゲットシステムの動作をモデル化するバイナリルールを受け取ることであって、前記センサは、前記ターゲットシステムに関係付けられた状態情報を測定し、少なくとも1つの制御は、前記ターゲットシステムの少なくとも1つの出力を修正するように操作可能であり、前記バイナリルールは、前記1つまたは複数の制御を操作するために行う制御アクションの結果に関する真値または偽値に達するように評価される前記状態情報を含む条件を指定する、該受け取ることと、
前記ターゲットシステムを記述しおよび結合された微分方程式を含む前記バイナリルールに基づく初期モデルを、前記バイナリルールと取得されたセンサ情報と前記ターゲットシステムに関する指定された目標とから作成することと、
時間の期間中の複数の時間において前記ターゲットシステムの前記動作を制御するために前記作成された初期モデルを使用し、前記制御された動作を記述するデータを取得することであって、前記ターゲットシステムの前記動作を制御することは、前記複数の時間の各々について前記結合された微分方程式の区分線形解析を実行して、前記ターゲットシステムの少なくとも1つの制御を操作しおよび前記目標に対する解を提供する、前記時間に関して行うための少なくとも1つの制御アクションを識別することを含み、前記取得されたデータは、センサ値に関して、および前記ターゲットシステムの前記制御を操作する制御アクションについて、および前記ターゲットシステムからの出力についての情報を含む、該取得することと、
前記取得されたデータから、前記ターゲットシステムの前記動作をさらにモデル化する1つまたは複数のソフトルールを自動的に学習することであって、各ソフトルールは、関連付けられた可能性を有する真値または偽値以外の可能性のある値に達するように評価される1つまたは複数の追加の条件を指定し、前記学習することは、
問い合わせを行って、前記ターゲットシステムの1つまたは複数のセンサが複数の値の各々を有する指定された状況における、前記ターゲットシステムの前記動作についての前記取得されたデータから結果を取得すること、
前記問い合わせから取得された前記結果と前記作成された初期モデルからの前記指定された状況の他の期待された結果との間の差異を決定すること、および
前記決定された差異を表わすように前記1つまたは複数のソフトルールを構築すること
を含み、
前記ターゲットシステムのさらなる制御に使用するために、前記学習された1つまたは複数のソフトルールについての情報を提供することと
によって前記ターゲットシステムのための自動化制御システムを実施させることを特徴とするシステム。
20. 記憶された命令は、実行されたとき、1つまたは複数のコンピューティングデバイスに、項1ないし14の1つまたは複数の任意の組み合わせの方法をさらに実施させるソフトウェア命令であることを特徴とする項19に記載のシステム。
上記から、例示のために特定の実施形態が本明細書で説明されているが、本発明の趣旨および範囲から逸脱することなく様々な修正が行われてよいことは理解されよう。したがって、本発明は、添付の特許請求の範囲およびそれに記載された要素による場合を除いて限定されない。加えて、本発明の特定の態様が特定の請求形式で提案されるが、本発明者らは、任意の利用可能な請求形式で本発明の様々な態様を企図する。たとえば、本発明の一部の態様のみがコンピュータ可読媒体で実施されるものとして現在記載されているが、同様に他の態様もそのように実施されてよい。

Claims (15)

  1. コンピュータ実施方法であって、
    1つまたは複数の構成されたコンピューティングシステムによって、複数のセンサと1つまたは複数の制御と1つまたは複数の出力とを有する指定された種類の物理システムの動作をモデル化するバイナリルールのセットを受け取るステップであって、各センサは、前記指定された種類の物理システムの前記動作に関係付けられた少なくとも1つの種類の状態情報を測定し、各制御は、前記指定された種類の物理システムの少なくとも1つの出力を修正するように操作可能であり、前記バイナリルールは、前記1つまたは複数の制御を操作する制御アクションの結果に関する真値または偽値に達するように評価される状態情報を含む条件を指定する、該ステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによって、時間の期間にわたって前記指定された種類のターゲット物理システムの実際の動作を記述するデータを取得するステップであって、前記データは、前記時間の期間中の複数の時間の各々について、前記ターゲット物理システムに関する前記時間における前記センサの値、および前記時間についての前記ターゲット物理システムに関する前記制御を操作するために実行される1つまたは複数の制御アクションの値、および前記時間についての前記1つまたは複数の制御アクションの結果として生じる前記ターゲット物理システムからの前記出力の値、についての情報を含む、該ステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによって、前記取得されたデータから、前記ターゲット物理システムの前記実際の動作を表わすデータモデルを生成するステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによっておよび前記生成されたデータモデルから、前記ターゲット物理システムの前記実際の動作をさらにモデル化する1つまたは複数のソフトルールを自動的に学習するステップであって、各ソフトルールは、複数の可能性のある値のうちの1つに達するように評価される1つまたは複数の追加の条件を指定し、前記複数の可能性のある値は、確率的な値を表わし、前記1つの可能性のある値は、尤度を有し、および、前記学習するステップは、
    前記データモデルに問い合わせて、前記ターゲット物理システムの1つまたは複数のセンサが複数の値の各々を有する指定された状況における前記ターゲット物理システムの前記実際の動作からの結果を取得するステップ、
    前記データモデルの前記問い合わせから取得された前記結果とバイナリルールの前記セットからの前記指定された状況の期待された結果との間の差異を決定するステップ、および
    前記決定された差異を表わすように前記1つまたは複数のソフトルールを構築するステップ
    を含み、
    前記1つまたは複数の構成されたコンピューティングシステムによって、前記ターゲット物理システムのさらなる制御に使用するために、前記学習された1つまたは複数のソフトルールについての情報を提供するステップと
    を含むことを特徴とするコンピュータ実施方法。
  2. 前記1つまたは複数の構成されたコンピューティングシステム上で実行している協働分散判断システムによって、前記ターゲット物理システムの少なくとも1つのセンサについての現在の状態情報を識別するセンサ情報を取得するステップと、
    前記協働分散判断システムによって、少なくとも前記バイナリルールと前記取得されたセンサ情報と前記指定された種類の物理システムに関する指定された目標とから、結合された微分方程式を含む前記ターゲット物理システムの現在の状態を記述するモデルを作成するステップと、
    前記協働分散判断システムによっておよび前記作成されたモデルに基づいて、前記結合された微分方程式の区分線形解析を実行して、前記ターゲット物理システムの少なくとも1つの制御を操作しおよび前記目標に対する解を提供する、少なくとも1つの制御アクションを識別するステップと、
    前記ターゲット物理システムにおいて前記少なくとも1つの制御アクションの実施を開始して、前記少なくとも1つの制御を操作し、前記ターゲット物理システムの少なくとも1つの出力の、結果の変化を引き起こすステップと
    をさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  3. 前記学習された1つまたは複数のソフトルールについての前記情報の前記提供ステップは、前記協働分散判断システムによって、前記学習された1つまたは複数のソフトルールの表現を含むように前記作成されたモデルを自動的に更新するステップと、前記更新された作成されたモデルを使用して、前記ターゲット物理システムにおける1つまたは複数の追加の制御アクションを決定して実行するステップとを含むことを特徴とする請求項2に記載のコンピュータ実施方法。
  4. 前記モデルの前記作成ステップは、前記データの前記取得ステップの前に実行され、さらに、前記指定された種類の物理システムの前記動作をモデル化するために受け取られた1つまたは複数の初期ソフトルールに一部基づいて、前記ターゲット物理システムに対する1つまたは複数の構造的修正が、前記モデルの前記作成するステップと前記データの前記取得するステップとの間に行われ、前記1つまたは複数のソフトルールの前記自動的に学習するステップは、前記1つまたは複数の修正に関係付けられた少なくとも1つの追加のソフトルールを学習するステップを含み、前記作成されたモデルの前記自動的に更新するステップは、前記作成されたモデルを前記1つまたは複数の構造的修正を表わすように適合させるステップを含むことを特徴とする請求項3に記載のコンピュータ実施方法。
  5. 前記1つまたは複数のソフトルールの前記学習するステップは、
    前記1つまたは複数の構成されたコンピューティングシステムによって、前記データモデルの前記問い合わせから取得された前記結果を表す全体的ハミルトン関数を生成するステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによって、および前記バイナリルール上の少なくとも一部基づいて、前記指定された種類の物理システムのルールベースのモデルを表すバイナリルールベースのハミルトン関数を生成するステップと
    をさらに含み、
    前記差異の前記決定ステップは、前記1つまたは複数の構成されたコンピューティングシステムによって、前記全体的ハミルトン関数と前記バイナリルールベースのハミルトン関数との間の差異を表わすソフトルールベースのハミルトン関数を生成するステップを含み、前記1つまたは複数のソフトルールの前記構築するステップは、前記1つまたは複数の構成されたコンピューティングシステムによって、前記ソフトルールベースのハミルトン関数の自然対数を実行するステップを含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  6. 前記差異の前記決定するステップは、前記1つまたは複数の構成されたコンピューティングシステムによって、前記ソフトルールベースのハミルトン関数を表わすために1つもしくは複数のスプラインまたは1つもしくは複数の区分多項式関数のうちの少なくとも1つを決定することによって前記ソフトルールベースのハミルトン関数を近似するステップをさらに含むことを特徴とする請求項5に記載のコンピュータ実施方法。
  7. 前記データの前記取得するステップは、前記時間の期間中の複数の追加の時間の各々について、前記ターゲット物理システムに関する前記追加の時間での前記センサの値、および前記追加の時間についての前記ターゲット物理システムからの前記出力の値、についての追加の情報を取得するステップをさらに含み、前記取得されたデータの前記生成ステップはさらに、前記取得された追加の情報上の一部に基づくことを特徴とする請求項1に記載のコンピュータ実施方法。
  8. 前記1つまたは複数のソフトルールの前記学習するステップは、
    前記データモデルの前記問い合わせから取得された前記結果が前記1つまたは複数のソフトルールの前記尤度に関する閾値を満たすのに十分な情報を提供しないと決定するステップと、
    追加の結果が、前記1つまたは複数のソフトルールの前記尤度に関する前記閾値を満たすのに十分な情報を提供するまで、前記データモデルのさらなる問い合わせを行って、前記ターゲット物理システムの前記実際の動作から前記追加の結果を取得するステップと
    をさらに含み、
    前記決定された差異は、前記データモデルからの前記追加の結果とバイナリルールの前記セットからの追加の期待される結果との間の差異をさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  9. 前記1つまたは複数のソフトルールの前記学習するステップは、
    前記結果を取得する前記データモデルの前記問い合わせの前に、前記データモデルの他の問い合わせを実行して、前記ターゲット物理システムの1つまたは複数のセンサが複数の他の値の各々を有する、他の指定された状況における前記ターゲット物理システムの前記実際の動作からの初期の結果を取得するステップと、
    前記データモデルの前記問い合わせから取得された前記結果が、閾値を満たす前記初期の結果に対して新しい情報を提供すると決定するステップと、
    前記データモデルのさらなる問い合わせを行って、追加の結果が、前記閾値を満たすために先行の結果に対して十分に新しい情報を提供しなくなるまで、前記追加の結果を前記ターゲット物理システムの前記実際の動作から取得するステップと
    をさらに含み、
    前記決定された差異は、前記データモデルからの前記追加の結果とバイナリルールの前記セットからの追加の期待される結果との間の差異をさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  10. 前記セットの前記バイナリルールは、前記指定された種類の物理システムの前記動作に関する要件である修正不可能な制約を指定する1つまたは複数の絶対的ルールを含み、指定された状況で修正されることができる前記指定された種類の物理システムの前記動作に関する制約を指定する1つまたは複数のハードルールをさらに含み、前記方法は、
    前記1つまたは複数の構成されたコンピューティングシステムによって、第2の時間の期間にわたって前記指定された種類の第2のターゲット物理システムの実際の動作を記述する第2のデータを取得するステップであって、前記データは、前記第2の時間の期間中の複数の時間の各々について、前記第2のターゲット物理システムに関する前記時間での前記センサの値、および前記時間についての前記第2のターゲット物理システムに関する前記制御を操作するために実行される1つまたは複数の制御アクションの値、および前記時間についての前記1つまたは複数の制御アクションの結果として生じる前記第2のターゲット物理システムからの前記出力の値、についての情報を含む、該ステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによっておよび前記取得されたデータから、前記第2のターゲット物理システムの前記実際の動作を表わす第2のデータモデルを生成するステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによっておよび前記生成された第2のデータモデルから、前記第2のターゲット物理システムの前記実際の動作をさらにモデル化する1つまたは複数の第2のソフトルールを自動的に学習するステップであって、前記1つまたは複数の第2のソフトルールは、前記ターゲット物理システムに関する前記学習された1つまたは複数のソフトルールと異なり、前記ターゲット物理システムと前記第2のターゲット物理システムとの間の差異を反映する、該ステップと、
    前記1つまたは複数の構成されたコンピューティングシステムによって、前記第2のターゲット物理システムのさらなる制御に使用するために、前記学習された1つまたは複数の第2のソフトルールについての情報を提供するステップと
    をさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  11. 1つまたは複数のコンピューティングシステムに動作を行わせるコンテンツを記憶した非一時的コンピュータ可読媒体であって、前記動作は、
    前記1つまたは複数のコンピューティングシステムによって、センサと1つまたは複数の制御と1つまたは複数の出力とを有するターゲットシステムの動作をモデル化するバイナリルールを受け取ることであって、前記センサは、前記ターゲットシステムの要素の物理的状態に関する情報を測定し、少なくとも1つの制御は、前記ターゲットシステムの少なくとも1つの出力を修正するように操作可能であり、前記バイナリルールは、前記1つまたは複数の制御を操作する制御アクションの結果に関する真値または偽値に達するように評価される状態情報を含む条件を指定する、該受け取ることと、
    前記1つまたは複数のコンピューティングシステムによって、時間の期間にわたって前記指定された種類のターゲットシステムの実際の動作を記述するデータを取得することであって、前記データは、前記時間の期間中の複数の時間の各々について、前記ターゲットシステムに関する前記時間でのセンサ値、および前記時間についての前記ターゲットシステムに関する前記制御を操作する1つまたは複数の制御アクション、および前記時間についての前記ターゲットシステムからの1つまたは複数の出力、についての情報を含む、該取得することと、
    前記1つまたは複数のコンピューティングシステムによって、前記取得されたデータから、前記ターゲットシステムの前記動作をさらにモデル化する1つまたは複数のソフトルールを自動的に学習することであって、各ソフトルールは、可能性のある値に達するように評価される1つまたは複数の追加の条件を指定し、前記可能性のある値は、確率的な値を表わしおよび尤度を有し、および前記学習することは、
    問い合わせを行って、前記ターゲットシステムの1つまたは複数のセンサが複数の値の各々を有する指定された状況における前記ターゲットシステムの前記動作に関する前記取得されたデータから結果を取得すること、
    前記問い合わせから取得された前記結果と前記バイナリルールからの前記指定された状況の期待された結果との間の差異を決定すること、および
    前記決定された差異を表わすように前記1つまたは複数のソフトルールを構築すること
    を含み、
    前記1つまたは複数のコンピューティングシステムによって、前記ターゲットシステムのさらなる制御に使用するために、前記学習された1つまたは複数のソフトルールについての情報を提供することと
    を含むことを特徴とする非一時的コンピュータ可読媒体。
  12. 前記記憶されたコンテンツは、ソフトウェア命令を含み、前記ソフトウェア命令は、実行されたとき、追加の動作を前記1つまたは複数のコンピューティングシステムにさらに行わせ、前記追加の動作は、
    前記ターゲットシステムの少なくとも1つのセンサについての状態情報を識別するセンサ情報を取得することと、
    少なくとも前記バイナリルールと前記取得されたセンサ情報と前記ターゲットシステムに関する指定された目標とから、結合された微分方程式を含む前記ターゲットシステムの状態を記述するモデルを作成することと、
    前記作成されたモデルに基づいて、前記結合された微分方程式の区分線形解析を実行して、前記ターゲットシステムの少なくとも1つの制御を操作しおよび前記目標に対する解を提供する、少なくとも1つの制御アクションを識別することと、
    前記ターゲットシステムにおいて前記少なくとも1つの制御アクションの実施を開始して、前記少なくとも1つの制御を操作し、前記ターゲットシステムの少なくとも1つの出力の、結果の変化を引き起こすことと
    を含むことを特徴とする請求項11に記載の非一時的コンピュータ可読媒体。
  13. 前記ターゲットシステムは、指定された種類の物理システムであり、前記受け取られたバイナリルールは、前記指定された種類の物理システムの動作をさらにモデル化し、
    前記学習された1つまたは複数のソフトルールに関する前記情報の前記提供は、前記学習された1つまたは複数のソフトルールの表現を含むように前記作成されたモデルを自動的に更新することと、
    前記更新された作成されたモデルを使用して、前記ターゲットシステムにおける1つまたは複数の追加の制御アクションを決定して実行することと
    を含むことを特徴とする請求項12に記載の非一時的コンピュータ可読媒体。
  14. システムであって、
    1つまたは複数のコンピューティングシステムの1つまたは複数のハードウェアプロセッサと、
    命令を記憶する1つまたは複数のメモリと
    を備え、前記命令は、前記1つまたは複数のハードウェアプロセッサのうちの少なくとも1つによって実行されたとき、前記システムに、
    センサと1つまたは複数の制御と1つまたは複数の出力とを有するターゲットシステムの動作をモデル化するバイナリルールを受け取ることであって、前記センサは、前記ターゲットシステムに関係付けられた状態情報を測定し、少なくとも1つの制御は、前記ターゲットシステムの少なくとも1つの出力を修正するように操作可能であり、前記バイナリルールは、前記1つまたは複数の制御を操作する制御アクションの結果に関する真値または偽値に達するように評価される前記状態情報を含む条件を指定する、該受け取ることと、
    前記ターゲットシステムを記述しおよび結合された微分方程式を含む前記バイナリルールに基づく初期モデルを、前記バイナリルールと取得されたセンサ情報と前記ターゲットシステムに関する指定された目標とから作成することと、
    時間の期間中の複数の時間において前記ターゲットシステムの前記動作を制御するために前記作成された初期モデルを使用し、前記制御された動作を記述するデータを取得することであって、前記ターゲットシステムの前記動作を制御することは、前記複数の時間の各々について前記結合された微分方程式の区分線形解析を実行して、前記ターゲットシステムの少なくとも1つの制御を操作しおよび前記目標に対する解を提供する、前記時間に関して実行するための少なくとも1つの制御アクションを識別することを含み、前記取得されたデータは、センサ値に関して、および前記ターゲットシステムの前記制御を操作する制御アクションについて、および前記ターゲットシステムからの出力についての情報を含む、該取得することと、
    前記取得されたデータから、前記ターゲットシステムの前記動作をさらにモデル化する1つまたは複数のソフトルールを自動的に学習することであって、各ソフトルールは、可能性のある値に達するように評価される1つまたは複数の追加の条件を指定し、前記可能性のある値は、確率的な値を表わしおよび尤度を有し、および前記学習することは、
    問い合わせを行って、前記ターゲットシステムの1つまたは複数のセンサが複数の値の各々を有する指定された状況における、前記ターゲットシステムの前記動作についての前記取得されたデータから結果を取得すること、
    前記問い合わせから取得された前記結果と前記作成された初期モデルからの前記指定された状況の期待された結果との間の差異を決定すること、および
    前記決定された差異を表わすように前記1つまたは複数のソフトルールを構築すること
    を含み、
    前記ターゲットシステムのさらなる制御に使用するために、前記学習された1つまたは複数のソフトルールについての情報を提供することと
    によって前記ターゲットシステムのための自動化制御システムを実装させることを特徴とするシステム。
  15. 前記学習された1つまたは複数のソフトルールについての前記情報の前記提供は、前記学習された1つまたは複数のソフトルールの表現を含むように前記作成されたモデルを自動的に更新することと、前記更新された作成されたモデルを使用して、前記ターゲットシステムにおける1つまたは複数の追加の制御アクションを決定して実行することとを含むことを特徴とする請求項14に記載のシステム。
JP2018560015A 2016-05-13 2017-05-11 センサデータを使用して、ターゲットシステムの機能性をモデル化することによってターゲットシステムにおける制御を支援すること Expired - Fee Related JP6626224B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662336418P 2016-05-13 2016-05-13
US62/336,418 2016-05-13
US15/410,647 2017-01-19
US15/410,647 US10303131B2 (en) 2016-05-13 2017-01-19 Using sensor data to assist in controlling a target system by modeling the functionality of the target system
PCT/US2017/032291 WO2017197201A1 (en) 2016-05-13 2017-05-11 Using sensor data to assist in controlling a target system by modeling the functionality of the target system

Publications (2)

Publication Number Publication Date
JP2019528494A JP2019528494A (ja) 2019-10-10
JP6626224B2 true JP6626224B2 (ja) 2019-12-25

Family

ID=60266823

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018560015A Expired - Fee Related JP6626224B2 (ja) 2016-05-13 2017-05-11 センサデータを使用して、ターゲットシステムの機能性をモデル化することによってターゲットシステムにおける制御を支援すること

Country Status (6)

Country Link
US (1) US10303131B2 (ja)
EP (1) EP3449425B1 (ja)
JP (1) JP6626224B2 (ja)
KR (1) KR102080468B1 (ja)
CN (1) CN109844653B (ja)
WO (1) WO2017197201A1 (ja)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH706736A1 (de) * 2012-07-09 2014-01-15 Belimo Holding Ag Verfahren zum Betrieb eines Wärmetauschers sowie HVAC-Anlage zur Durchführung des Verfahrens.
US9411327B2 (en) 2012-08-27 2016-08-09 Johnson Controls Technology Company Systems and methods for classifying data in building automation systems
US10133250B2 (en) * 2014-06-20 2018-11-20 Veritone Alpha, Inc. Managing construction of decision modules to control target systems
US10534326B2 (en) 2015-10-21 2020-01-14 Johnson Controls Technology Company Building automation system with integrated building information model
US11947785B2 (en) 2016-01-22 2024-04-02 Johnson Controls Technology Company Building system with a building graph
US11268732B2 (en) 2016-01-22 2022-03-08 Johnson Controls Technology Company Building energy management system with energy analytics
US11768004B2 (en) 2016-03-31 2023-09-26 Johnson Controls Tyco IP Holdings LLP HVAC device registration in a distributed building management system
US11774920B2 (en) 2016-05-04 2023-10-03 Johnson Controls Technology Company Building system with user presentation composition based on building context
US10417451B2 (en) 2017-09-27 2019-09-17 Johnson Controls Technology Company Building system with smart entity personal identifying information (PII) masking
US10505756B2 (en) 2017-02-10 2019-12-10 Johnson Controls Technology Company Building management system with space graphs
US11347751B2 (en) * 2016-12-07 2022-05-31 MyFitnessPal, Inc. System and method for associating user-entered text to database entries
US10684033B2 (en) 2017-01-06 2020-06-16 Johnson Controls Technology Company HVAC system with automated device pairing
US11900287B2 (en) 2017-05-25 2024-02-13 Johnson Controls Tyco IP Holdings LLP Model predictive maintenance system with budgetary constraints
US11307538B2 (en) 2017-02-10 2022-04-19 Johnson Controls Technology Company Web services platform with cloud-eased feedback control
US10452043B2 (en) 2017-02-10 2019-10-22 Johnson Controls Technology Company Building management system with nested stream generation
US11994833B2 (en) 2017-02-10 2024-05-28 Johnson Controls Technology Company Building smart entity system with agent based data ingestion and entity creation using time series data
US10854194B2 (en) 2017-02-10 2020-12-01 Johnson Controls Technology Company Building system with digital twin based data ingestion and processing
US20190095518A1 (en) 2017-09-27 2019-03-28 Johnson Controls Technology Company Web services for smart entity creation and maintenance using time series data
US11360447B2 (en) * 2017-02-10 2022-06-14 Johnson Controls Technology Company Building smart entity system with agent based communication and control
US10095756B2 (en) 2017-02-10 2018-10-09 Johnson Controls Technology Company Building management system with declarative views of timeseries data
US10515098B2 (en) 2017-02-10 2019-12-24 Johnson Controls Technology Company Building management smart entity creation and maintenance using time series data
US11764991B2 (en) 2017-02-10 2023-09-19 Johnson Controls Technology Company Building management system with identity management
US11042144B2 (en) * 2017-03-24 2021-06-22 Johnson Controls Technology Company Building management system with dynamic channel communication
US11327737B2 (en) 2017-04-21 2022-05-10 Johnson Controls Tyco IP Holdings LLP Building management system with cloud management of gateway configurations
US10788229B2 (en) 2017-05-10 2020-09-29 Johnson Controls Technology Company Building management system with a distributed blockchain database
US11022947B2 (en) 2017-06-07 2021-06-01 Johnson Controls Technology Company Building energy optimization system with economic load demand response (ELDR) optimization and ELDR user interfaces
US10705492B2 (en) * 2017-06-12 2020-07-07 PassiveLogic, Inc. Heuristic method of automated and learning control, and building automation systems thereof
US10708078B2 (en) * 2017-06-13 2020-07-07 PassiveLogic, Inc. Automatic control method of generating sub-systems and sub-system arbitration from the deconstruction of a complex equipment graph
WO2018232147A1 (en) 2017-06-15 2018-12-20 Johnson Controls Technology Company Building management system with artificial intelligence for unified agent based control of building subsystems
JP7037289B2 (ja) * 2017-06-26 2022-03-16 三菱重工業株式会社 制御切替装置、プラント、制御切替方法およびプログラム
WO2019018304A1 (en) * 2017-07-17 2019-01-24 Johnson Controls Technology Company SYSTEMS AND METHODS FOR BUILDING SIMULATION ON THE BASIS OF AN AGENT FOR OPTIMAL CONTROL
EP3655824A1 (en) 2017-07-21 2020-05-27 Johnson Controls Technology Company Building management system with dynamic work order generation with adaptive diagnostic task details
US10619882B2 (en) 2017-07-27 2020-04-14 Johnson Controls Technology Company Building management system with scorecard for building energy and equipment performance
US11314788B2 (en) 2017-09-27 2022-04-26 Johnson Controls Tyco IP Holdings LLP Smart entity management for building management systems
US10962945B2 (en) 2017-09-27 2021-03-30 Johnson Controls Technology Company Building management system with integration of data into smart entities
US11195401B2 (en) 2017-09-27 2021-12-07 Johnson Controls Tyco IP Holdings LLP Building risk analysis system with natural language processing for threat ingestion
US10809682B2 (en) 2017-11-15 2020-10-20 Johnson Controls Technology Company Building management system with optimized processing of building system data
US11281169B2 (en) 2017-11-15 2022-03-22 Johnson Controls Tyco IP Holdings LLP Building management system with point virtualization for online meters
US11127235B2 (en) 2017-11-22 2021-09-21 Johnson Controls Tyco IP Holdings LLP Building campus with integrated smart environment
US11080363B2 (en) * 2017-12-15 2021-08-03 International Business Machines Corporation Free-form discovery of differential equations
US11954713B2 (en) 2018-03-13 2024-04-09 Johnson Controls Tyco IP Holdings LLP Variable refrigerant flow system with electricity consumption apportionment
US10666076B1 (en) * 2018-08-14 2020-05-26 Veritone Alpha, Inc. Using battery state excitation to control battery operations
US11016648B2 (en) 2018-10-30 2021-05-25 Johnson Controls Technology Company Systems and methods for entity visualization and management with an entity node editor
US11927925B2 (en) 2018-11-19 2024-03-12 Johnson Controls Tyco IP Holdings LLP Building system with a time correlated reliability data stream
US10452045B1 (en) * 2018-11-30 2019-10-22 Veritone Alpha, Inc. Controlling ongoing battery system usage while repeatedly reducing power dissipation
US11436567B2 (en) 2019-01-18 2022-09-06 Johnson Controls Tyco IP Holdings LLP Conference room management system
US10816949B1 (en) * 2019-01-22 2020-10-27 Veritone Alpha, Inc. Managing coordinated improvement of control operations for multiple electrical devices to reduce power dissipation
US10788798B2 (en) 2019-01-28 2020-09-29 Johnson Controls Technology Company Building management system with hybrid edge-cloud processing
US11069926B1 (en) * 2019-02-14 2021-07-20 Vcritonc Alpha, Inc. Controlling ongoing battery system usage via parametric linear approximation
CN110851684B (zh) * 2019-11-12 2022-10-04 重庆邮电大学 一种基于三元关联图的社交话题影响力识别方法及装置
US20210200174A1 (en) 2019-12-31 2021-07-01 Johnson Controls Technology Company Building information model management system with hierarchy generation
US11769066B2 (en) 2021-11-17 2023-09-26 Johnson Controls Tyco IP Holdings LLP Building data platform with digital twin triggers and actions
CN115210700A (zh) 2019-12-31 2022-10-18 江森自控泰科知识产权控股有限责任合伙公司 建筑物数据平台
US11894944B2 (en) 2019-12-31 2024-02-06 Johnson Controls Tyco IP Holdings LLP Building data platform with an enrichment loop
US12021650B2 (en) 2019-12-31 2024-06-25 Tyco Fire & Security Gmbh Building data platform with event subscriptions
US11890550B2 (en) * 2020-01-02 2024-02-06 Mattel, Inc. Electrical tomography-based object recognition
US12100280B2 (en) 2020-02-04 2024-09-24 Tyco Fire & Security Gmbh Systems and methods for software defined fire detection and risk assessment
US11296928B2 (en) * 2020-03-03 2022-04-05 Level 3 Communications, Llc Containing a faulty stimulus in a content delivery network
AU2020434523B2 (en) * 2020-03-11 2023-08-24 Mitsubishi Electric Corporation Air-conditioning system
US11537386B2 (en) 2020-04-06 2022-12-27 Johnson Controls Tyco IP Holdings LLP Building system with dynamic configuration of network resources for 5G networks
EP4142968A4 (en) * 2020-04-29 2023-12-20 Hewlett-Packard Development Company, L.P. DETERMINATION OF THE DEVIATION OF PHYSICAL PROPERTIES OF A THREE-DIMENSIONAL OBJECT
US11651081B1 (en) * 2020-06-03 2023-05-16 Architecture Technology Corporation Systems and methods of application layer security
US11874809B2 (en) 2020-06-08 2024-01-16 Johnson Controls Tyco IP Holdings LLP Building system with naming schema encoding entity type and entity relationships
US11397773B2 (en) 2020-09-30 2022-07-26 Johnson Controls Tyco IP Holdings LLP Building management system with semantic model integration
US11954154B2 (en) 2020-09-30 2024-04-09 Johnson Controls Tyco IP Holdings LLP Building management system with semantic model integration
WO2022069954A1 (en) * 2020-10-01 2022-04-07 Telefonaktiebolaget Lm Ericsson (Publ) Cell multi-agent coordination in shared control elements
US12058212B2 (en) 2020-10-30 2024-08-06 Tyco Fire & Security Gmbh Building management system with auto-configuration using existing points
US12061453B2 (en) 2020-12-18 2024-08-13 Tyco Fire & Security Gmbh Building management system performance index
CN117280291A (zh) 2021-03-17 2023-12-22 江森自控泰科知识产权控股有限责任合伙公司 用于确定设备能量浪费的系统和方法
EP4089277A1 (en) * 2021-05-12 2022-11-16 General Electric Renovables España S.L. A method for operating a wind turbine, and a power plant
US11899723B2 (en) 2021-06-22 2024-02-13 Johnson Controls Tyco IP Holdings LLP Building data platform with context based twin function processing
US11892809B2 (en) * 2021-07-26 2024-02-06 Veritone, Inc. Controlling operation of an electrical grid using reinforcement learning and multi-particle modeling
US20230133652A1 (en) * 2021-10-29 2023-05-04 GE Grid GmbH Systems and methods for uncertainty prediction using machine learning
US11796974B2 (en) 2021-11-16 2023-10-24 Johnson Controls Tyco IP Holdings LLP Building data platform with schema extensibility for properties and tags of a digital twin
US11934966B2 (en) 2021-11-17 2024-03-19 Johnson Controls Tyco IP Holdings LLP Building data platform with digital twin inferences
US11704311B2 (en) 2021-11-24 2023-07-18 Johnson Controls Tyco IP Holdings LLP Building data platform with a distributed digital twin
US11714930B2 (en) 2021-11-29 2023-08-01 Johnson Controls Tyco IP Holdings LLP Building data platform with digital twin based inferences and predictions for a graphical building model
US12013673B2 (en) 2021-11-29 2024-06-18 Tyco Fire & Security Gmbh Building control system using reinforcement learning
WO2023121514A1 (ru) * 2021-12-21 2023-06-29 Владимир Германович КРЮКОВ Система принятия решений в мультиагентной среде
US20240014657A1 (en) * 2022-07-07 2024-01-11 Sherif ABDELRAZEK Method and software to aid in creating dispatch profiles of energy storage systems and to model performance of energy storage systems
US12061633B2 (en) 2022-09-08 2024-08-13 Tyco Fire & Security Gmbh Building system that maps points into a graph schema
US12013823B2 (en) 2022-09-08 2024-06-18 Tyco Fire & Security Gmbh Gateway system that maps points into a graph schema

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1024858A (en) * 1911-12-06 1912-04-30 James M Kissinger Fence-post.
US6088689A (en) 1995-11-29 2000-07-11 Hynomics Corporation Multiple-agent hybrid control architecture for intelligent real-time control of distributed nonlinear processes
US5727128A (en) 1996-05-08 1998-03-10 Fisher-Rosemount Systems, Inc. System and method for automatically determining a set of variables for use in creating a process model
US5755378A (en) 1997-01-21 1998-05-26 Ford Global Technologies, Inc. Method and system for controlling an automotive HVAC system to prevent formation of cabin thermal stratification
US5963447A (en) 1997-08-22 1999-10-05 Hynomics Corporation Multiple-agent hybrid control architecture for intelligent real-time control of distributed nonlinear processes
US20030069868A1 (en) 2001-06-29 2003-04-10 Vos Jules Jakob Distributed decision processing system
AU2003210750A1 (en) 2002-02-02 2003-09-02 E-Wings, Inc. Distributed system for interactive collaboration
US7072808B2 (en) 2002-02-04 2006-07-04 Tuszynski Steve W Manufacturing design and process analysis system
US7565333B2 (en) 2005-04-08 2009-07-21 Caterpillar Inc. Control system and method
US20090113049A1 (en) * 2006-04-12 2009-04-30 Edsa Micro Corporation Systems and methods for real-time forecasting and predicting of electrical peaks and managing the energy, health, reliability, and performance of electrical power systems based on an artificial adaptive neural network
US8849771B2 (en) 2010-09-02 2014-09-30 Anker Berg-Sonne Rules engine with database triggering
US20120072181A1 (en) * 2010-09-22 2012-03-22 Behzad Imani Method and apparatus for optimizing hvac systems in buildings
US8874242B2 (en) * 2011-03-18 2014-10-28 Rockwell Automation Technologies, Inc. Graphical language for optimization and use
TW201331066A (zh) * 2011-10-10 2013-08-01 普羅泰拉公司 在固定路線應用程式下用於電池壽命最大化的系統及方法
US20130253942A1 (en) 2012-03-22 2013-09-26 Hong Kong Baptist University Methods and Apparatus for Smart Healthcare Decision Analytics and Support
US20140250377A1 (en) 2013-03-04 2014-09-04 Atigeo Llc Method and system for searching and analyzing large numbers of electronic documents
US20150058078A1 (en) 2013-08-26 2015-02-26 Microsoft Corporation Rule to constraint translator for business application systems
US9957843B2 (en) * 2013-12-31 2018-05-01 General Electric Company Methods and systems for enhancing control of power plant generating units
US10133250B2 (en) 2014-06-20 2018-11-20 Veritone Alpha, Inc. Managing construction of decision modules to control target systems
US20170271984A1 (en) * 2016-03-04 2017-09-21 Atigeo Corp. Using battery dc characteristics to control power output
US10520905B2 (en) * 2016-04-28 2019-12-31 Veritone Alpha, Inc. Using forecasting to control target systems

Also Published As

Publication number Publication date
EP3449425A4 (en) 2019-06-26
EP3449425B1 (en) 2021-08-11
US10303131B2 (en) 2019-05-28
JP2019528494A (ja) 2019-10-10
CN109844653A (zh) 2019-06-04
CN109844653B (zh) 2020-10-30
EP3449425A1 (en) 2019-03-06
WO2017197201A1 (en) 2017-11-16
US20170329289A1 (en) 2017-11-16
KR102080468B1 (ko) 2020-02-24
KR20190022505A (ko) 2019-03-06

Similar Documents

Publication Publication Date Title
JP6626224B2 (ja) センサデータを使用して、ターゲットシステムの機能性をモデル化することによってターゲットシステムにおける制御を支援すること
JP7222883B2 (ja) 予測を使用してターゲットシステムを制御すること
US10601316B2 (en) Using battery DC characteristics to control power output
US10666076B1 (en) Using battery state excitation to control battery operations
JP7030777B2 (ja) バッテリ管理システム
CN107680657B (zh) 医学扫描仪自学优化临床协议和图像采集
US11097633B1 (en) Using battery state excitation to model and control battery operations
US10969757B1 (en) Controlling ongoing battery system usage while repeatedly reducing power dissipation
US10816949B1 (en) Managing coordinated improvement of control operations for multiple electrical devices to reduce power dissipation
Chang et al. Meeting ecologists' requirements with adaptive data acquisition
US11069926B1 (en) Controlling ongoing battery system usage via parametric linear approximation
WO2021076313A1 (en) Controlling use of a battery cell having an internal supercapacitor and battery
CN116954162A (zh) 生成用于工业系统的控制策略的方法及装置
WO2023009447A1 (en) Controlling operation of an electrical grid using reinforcement learning and multi-particle modeling
CN110598931A (zh) 基于图卷积的节点电价预测方法及装置
Xie et al. Demand Response in Microgrids with Attention-Based Deep Reinforcement Learning
Shabanski Sensor array current consumption optimizer with Gradient Descent
CN115907141A (zh) 一种短期电力负荷预测方法、系统及预测计算机

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190124

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190124

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190716

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191001

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20191031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191128

R150 Certificate of patent or registration of utility model

Ref document number: 6626224

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees