JP7437585B2 - 分散型システムにおけるデータ交換および処理同期 - Google Patents

分散型システムにおけるデータ交換および処理同期 Download PDF

Info

Publication number
JP7437585B2
JP7437585B2 JP2022537656A JP2022537656A JP7437585B2 JP 7437585 B2 JP7437585 B2 JP 7437585B2 JP 2022537656 A JP2022537656 A JP 2022537656A JP 2022537656 A JP2022537656 A JP 2022537656A JP 7437585 B2 JP7437585 B2 JP 7437585B2
Authority
JP
Japan
Prior art keywords
iterations
iteration
agent
agent node
determining
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.)
Active
Application number
JP2022537656A
Other languages
English (en)
Other versions
JP2023507607A (ja
Inventor
シントゥグル,メフメト・エイチ
イーシェンコ,ドミトリー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Energy Ltd
Original Assignee
Hitachi Energy Ltd
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 Hitachi Energy Ltd filed Critical Hitachi Energy Ltd
Publication of JP2023507607A publication Critical patent/JP2023507607A/ja
Application granted granted Critical
Publication of JP7437585B2 publication Critical patent/JP7437585B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

背景
本開示は、概して分散型システムに関する。集中的に計算されるアルゴリズムは、分散型制御アルゴリズムとの置換えが進みつつある。分散型制御アルゴリズムでは、分散型システムのエージェントノードの各々がエージェントノード間でデータを交換しながらアルゴリズムの一部分を実行する。これらの分散型制御アルゴリズムを従来通りに実行するには、エージェントノード間の同期通信が必要となる。しかしながら、分散型システムは、ノード間の非同期通信ネットワークを用いる可能性がある。代替的には、分散型システムの同期通信ネットワークは、システム障害または通信遅延により非同期になる可能性がある。非同期的に通信する分散型システム内で分散型制御アルゴリズムを実行することを含め、いくつかの要望が依然として対処されないまま残っている。当技術分野におけるこれらおよび他の欠点を考慮すると、本明細書に開示される固有の装置、方法、システム、および技術が大いに必要とされている。
連邦政府による資金提供を受けた研究開発に関する記載
本発明は、米国エネルギー省によって授与された契約番号DE-OE000831の下で米国政府支援により行なわれた。米国政府は本発明に一定の権利を有する。
例示的な実施形態の開示
本開示の非限定的で例示的な実施形態、当該実施形態を製造および使用する態様およびプロセスを明確、簡潔、かつ正確に説明するために、さらには、当該実施形態の実施、製造および使用を可能にするために、ここでは、図に示されるものを含む特定の例示的な実施形態を参照するとともに、その説明のために特定の言語を用いることとする。しかしながら、これにより本開示の範囲が限定されるものではないこと、さらには、本開示が、本開示の利益とともに当業者に想到されるであろう例示的な実施形態のそのような変更例、修正例、およびさらなる適用例を含むとともに保護することを理解されたい。
開示の概要
本開示の例示的な実施形態は、分散システムにおける同期通信のための固有のシステム、方法、技術、および装置を含む。本開示のさらなる実施形態、形状、目的、特徴、利点、局面、および利益は、以下の記載および添付の図面から明らかになるだろう。
非同期通信ネットワークを含む例示的なマイクログリッドシステムを示す図である。 非同期通信ネットワークにおけるデータ交換のための例示的なプロセスを示すフローチャートである。 図2に示す例示的なプロセスを示すシーケンス図である。 非同期通信ネットワークにおけるデータ交換のための別の例示的なプロセスを示すフローチャートである。 図4に示す例示的なプロセスを示すシーケンス図である。 図2および図4に示す例示的なプロセスに基づいた、図1の例示的なマイクログリッドにおける状態推定を示すグラフのセットである。 図2および図4に示す例示的なプロセスに基づいた、図1の例示的なマイクログリッドにおける状態推定結果を示す表である。
例示的な実施形態の詳細な説明
図1を参照すると、例示的なネットワーク化されたマイクログリッドシステム100が示されている。システム100は、数例を挙げると、ユーティリティグリッド配電システム、産業プラント配電システム、および車両配電システムを含む、さまざまな産業自動化または電力システム用途において実装され得ることを理解されたい。システム100のトポロジは、説明を目的として例示されたものであり、本開示の限定として意図したものではないことを理解されたい。システム100は単線図で示されているが、システム100は、単相交流(alternating current:AC)電力、多相AC電力、または直流(direct current:DC)電力を送信するように構築され得る。
システム100は、マイクログリッド110、120、130、140および150を含む。各マイクログリッドは、複数のバスのうちの1つに結合された少なくとも1つの負荷と少なくとも1つの電源とを含む。各マイクログリッドは、マイクログリッドの電気的特性または物理的特性を測定するように構築された複数のフィールドデバイスを含む。たとえば、マイクログリッド150は、バス153を含む複数のバスと、負荷155を含む複数の負荷と、AC電源157と、複数のフィールドデバイス152とを含む。
AC電源157は、ソーラーパネルアレイ、風力タービン、天然ガス発生器、または電力を生成するように構築された他の任意のデバイスもしくはシステムを含み得る。負荷155は、電力を消費するように構築された任意のタイプのデバイスまたはシステムであり得る。複数のフィールドデバイス152は、数例を挙げると、電圧センサ、インテリジェント電子デバイス(intelligent electronic device:IED)、リモートターミナルユニット(remote terminal unit:RTU)、リレー、リクローザ、電流センサ、電圧変圧器、および電流変圧器を含み得る。
各マイクログリッドはまた、複数の通信チャネルを介して複数のフィールドデバイスに結合された、エージェントノードとしても公知であるマイクログリッド制御システムを含む。たとえば、マイクログリッド150は、複数の通信チャネルを介して複数のフィールドデバイス152に結合されたマイクログリッド制御システム151を含む。
各マイクログリッド制御システムは、入力/出力デバイスと、処理デバイスと、メモリデバイスとを含む。たとえば、マイクログリッド制御システム121は、入力/出力デバイス123と、処理デバイス125と、メモリデバイス127とを含む。マイクログリッド制御システム121は、独立型デバイス、埋込みシステム、またはシステム121に関して説明された機能を実行するように構築された複数のデバイスであり得る。たとえば、システム121は、マイクログリッド監視制御およびデータ取得(supervisory control and data acquisition:SCADA)ゲートウェイに組込まれてもよい。
入力/出力デバイス123は、マイクログリッド制御システム121がローカルフィールドデバイスまたは他のマイクログリッドと通信することを可能にする。入力/出力デバイス123は、数例を挙げると、ネットワークアダプタ、ネットワーククレデンシャル、インターフェイス、またはポート(たとえば、USBポート、シリアルポート、パラレルポート、アナログポート、デジタルポート、VGA、DVI、HDMI(登録商標)、FireWire、CAT5、イーサネット(登録商標)、ファイバ、または他の任意のタイプのポートもしくはインターフェイス)を含み得る。入力/出力デバイス123は、これらのアダプタ、クレデンシャル、またはポート、たとえば、データを受信するための第1のポートおよびデータを送信するための第2のポートなど、のうち2つ以上を含み得る。
処理デバイス125は、いくつか例を挙げると、1つ以上のプロセッサ、算術論理ユニット(Arithmetic-Logic Unit:ALU)、中央処理装置(Central Processing Unit:CPU)、デジタル信号プロセッサ(Digital Signal Processor:DSP)、またはフィールドプログラマブルゲートアレイ(Field-programmable Gate Array:FPGA)を含み得る。複数の処理ユニットを備えた処理デバイスの形態では、分散処理、パイプライン処理、または並列処理が用いられ得る。処理デバイス125は、本明細書に記載の動作のみを実行する専用のものであってもよく、または1つ以上の追加のアプリケーションにおいて用いられてもよい。処理デバイス125は、メモリ127に格納されたプログラミング命令(ソフトウェアまたはファームウェアなど)によって定義されるような動作論理808に従ってアルゴリズムを実行してデータを処理するプログラム可能なタイプであり得る。代替的または付加的には、処理デバイス125のための動作論理は、少なくとも部分的にハードワイヤード論理または他のハードウェアによって定義される。処理デバイス125は、入力/出力デバイス123または他の場所から受信した信号を処理するとともに所望の出力信号を与えるのに適した任意のタイプの1つ以上の構成要素を含み得る。このような構成要素は、デジタル回路、アナログ回路、または両方の組合せを含み得る。
コンピュータ可読媒体としても公知であるメモリデバイス127は、数例を挙げると、ソリッドステートタイプ、電磁タイプ、光学タイプ、またはこれらの形態の組合せなどの、1つ以上のタイプのメモリであり得る。さらに、メモリデバイス127は、揮発性、不揮発性、一時的、非一時的、またはこれらのタイプの組合せであってもよく、メモリデバイス127のいくつかまたは全ては、数例を挙げると、ディスク、テープ、メモリスティック、またはカートリッジなどのポータブルなタイプのものであってもよい。加えて、メモリデバイス127は、一例を挙げると、動作論理を定義するプログラミング命令を格納することに加えて、またはその代わりに、入力/出力デバイス123から受信される信号、および/または入力/出力デバイス123に送信される信号を表わすデータなどの、処理デバイス125の動作論理によって操作されるデータを格納してもよい。メモリデバイス127は、処理デバイス125に含まれてもよく、および/または、処理デバイス125に結合されてもよい。システム100の他のマイクログリッド制御システムはまた、マイクログリッド制御システム121に関して本明細書に説明される構成要素を含み得ることを理解されたい。
マイクログリッド制御システム111、121、131、141、および151は、1つ以上の隣接するマイクログリッド制御システムと結合された通信チャネルを含む非同期通信ネットワーク160を介して通信するように構築される。ネットワーク160は非同期的に通信し得る。なぜなら、マイクログリッド制御システムがGPS時間信号などの共通の時間ソースに同期しないからであるか、または、ネットワーク160が通信遅延を被る同期通信ネットワークであるからである。図示の実施形態では、マイクログリッド制御システム111はマイクログリッド制御システム121および131と通信し、マイクログリッド制御システム121はマイクログリッド制御システム111のみと通信し、マイクログリッド制御システム131はマイクログリッド制御システム111、141、および151と通信し、マイクログリッド制御システム141はマイクログリッド制御システム131のみと通信し、マイクログリッド制御システム151はマイクログリッド制御システム131のみと通信する。
マイクログリッド制御システム間のネットワーク160の通信チャネルは、有線であっても無線であってもよい。ネットワーク160の各通信チャネルは、数例を挙げると、IEC61850、OPC UA、Pub-Sub、XMPP、またはDDSなどの標準化された通信プロトコルを用い得る。標準化された通信プロトコルが分散状態推定のためにマイクログリッドの挙動を定義するのに不十分である特定の実施形態では、交換されたメッセージのセマンティクスは共通の知識表現を用いて定義され得る。
たとえば、FIPA(Foundation For Intelligent Physical Agent)規格は、交換されたメッセージのセマンティクスを記述するためのACL(Agent Communication Language)を実装する。ACLメッセージの内容は、メッセージを通じて渡されるアクションのオブジェクトおよびパラメータを含む。送信者パラメータおよび受信者パラメータは、送信者および意図された受信者エージェントの名前を指定する。ACLメッセージは、数例を挙げると、通知、要求、拒否、加入および伝搬などの通信動作を表わす。IEC61850通信プロトコルは、ACL通信動作に基づいて抽象通信サービスインターフェイス(Abstract Communication Service Interface:ACSI)として非標準化IEC61850論理ノードを用いて拡張され得るとともに、GOOSEメッセージにマッピングされ得る。
各マイクログリッド制御システムは、対応するマイクログリッドについて測定された電気的特性および物理的特性をマイクログリッドのフィールドデバイスから受信し、マイクログリッドの制御可能なデバイスを動作させ、マイクログリッドに結合されたデバイスを障害および他の状態から保護するように構築される。マイクログリッド制御システムは、反復を再帰的に決定し、決定された反復を、非同期通信ネットワーク160を用いて他のマイクログリッド制御システムと共有することによって、少なくとも1つの分散型制御アプリケーションを実行するように集合的に構築される。
例示の目的で、システム100における状態を推定するための分散型制御アプリケーションをここで説明する。状態推定は、ネットワーク化されたマイクログリッドシステム100内の全てのマイクログリッドの電気的特性または物理的特性が、推定されるべきネットワーク化されたマイクログリッドシステムの電気的特性または物理的特性に関連する入力データを用いて推定されるプロセスである。状態推定は、ネットワーク化されたマイクログリッドシステム100内の全てのバスについてのバス電圧を推定することと、ネットワーク化されたマイクログリッドシステム100内の全てのマイクログリッドを通る電流フローを推定することとを含み得る。
最初に、各マイクログリッド制御システムは、対応するマイクログリッドのフィールドデバイスからのローカルデータを用いて第1の反復を決定する。第1の反復は、一例を挙げると、再帰最小二乗を用いて決定されてもよい。ベクトルセット(1)は、システム100の全マイクログリッドに関する局所状態推定ベクトルを含み、各ベクトルは、マイクログリッド内の各バスごとの初期電圧および位相角
Figure 0007437585000001
を含む。第0の反復において、各マイクログリッドは、初期推定ベクトルxMGn(0)を設定する。
Figure 0007437585000002
次に、各マイクログリッド制御システムは、他のマイクログリッド制御システムによって決定された全ての第1の反復を受信する間、その第1の反復を他のマイクログリッド制御システムに送信する。第1の反復のセットを用いる場合、各マイクログリッド制御システムは、ベクトルセット(1)を用いて第1の反復をグローバル推定ベクトルXMGglobalに組合わせる。
Figure 0007437585000003
グローバル推定ベクトルXMGglobalを用いる場合、ネットワーク化されたマイクログリッドシステムのマイクログリッド制御システムは、拡散戦略およびピアツーピア反復通信を用いて状態推定を実行する。拡散アルゴリズムは、N×1のサイズの同じパラメータベクトルωを推定するN個のマイクログリッド制御システムの集合を考慮に入れる。拡散アルゴリズムは、CTA(Combine-then-Adapt)およびATC(Adapt-then-Combine)という2つのタイプの戦略を採用する。ATCは以下のように要約することができる。すなわち、全ての反復インスタンスiにおいて、ATC戦略は2つのステップを実行する。第1のステップは情報交換ステップであり、マイクログリッド制御システムkは、その近隣からそれらのモーメント{Ru,l,rdu,l}を受信する。マイクログリッド制御システムkは、この情報を組合わせ、この組合わされた情報を用いて、その既存の推定値ωk,i-1を中間値
Figure 0007437585000004
に更新する。ネットワーク化されたマイクログリッドシステム内の他のすべてのマイクログリッド制御システムは、同様のステップを実行し、それらの推定値{ωk,i-1}を、それらの近隣からの情報を用いることによって中間推定値
Figure 0007437585000005
に更新している。第2のステップは、マイクログリッド制御システムkがその近隣の中間推定値を組合わせてその更新推定値ωk,iを得る集約ステップである。
エージェントマイクログリッド制御システムkによって決定される各反復は、数式セット(3)を用いて決定される。ここで、
Figure 0007437585000006
は、反復iでのエージェントマイクログリッド制御システムkの状態を示し、ωk,iは、反復iでのエージェントkについての中間変数であり、μは、エージェントマイクログリッド制御システムkの、ステップサイズとしても公知である非負更新パラメータであり、∇ωJk,i-1)は、反復iでの中間状態ωのエージェントマイクログリッド制御システムkについての確率的勾配である。
Figure 0007437585000007
特定の実施形態では、μは0.2である。他の実施形態では、μは0~1の範囲内である。確率的勾配は、ある反復から他の反復までのωの差である。各マイクログリッド制御システムは、その勾配を追跡し、これに応じてその近隣の全ての組合わせを更新する。
信頼行列Aの係数αklは、各マイクログリッド制御システムの互いに対するαの信頼ファクタである。係数は対称的である必要はなく、すなわち、αkl≠αlkであるが、各係数はゼロ以上でなければならず、1つのマイクログリッド制御システムによってその近隣に割当てられる信頼ファクタの合計は1に等しくなければならず、隣接していないマイクログリッド制御システムに割当てられる信頼ファクタはゼロでなければならない。
Figure 0007437585000008
信頼ファクタは、エージェントマイクログリッド制御システムとその近傍との間の信頼ファクタが、エージェントマイクログリッド制御システムまたは近隣のマイクログリッド制御システムのいずれかに対する、接続されたマイクログリッド制御システムの数の最大値の逆数に等しくなるように、かつ、マイクログリッド制御システムとマイクログリッド制御システム自体との間の信頼ファクタが、マイクログリッド制御システムとその近隣との間の信頼ファクタの合計から1を引いたものに等しくなるように割当てられ得る。数式セット(5)は上述した割当てを示しており、ここで、nは、マイクログリッド制御システムk自体を含むエージェントマイクログリッド制御システムkのうち接続されたマイクログリッド制御システムの数であり、nは、マイクログリッド制御システムl自体を含む近隣のマイクログリッド制御システムlのうち接続されたマイクログリッド制御システムの数であり、Nは、近隣iの隣接ノードである。
Figure 0007437585000009
言い換えれば、kからlまでの信頼ファクタは、いずれかのマイクログリッド制御システムが有する近隣の最大数に依存しており、自己重みは、Aにおける各行(および列)の合計を1にする。信頼行列は、システムトポロジの変化に応じて再計算され得るが、それ以外の場合には静的なままである。
数式セット(5)を用いて、各マイクログリッド制御システムが信頼行列を計算する。以下の行列は、数式セット(5)を用いて信頼行列に変換されるシステム100のトポロジ行列を示す。
Figure 0007437585000010
新しい反復の各々を決定した後、マイクログリッド制御システムは、それらの新しい反復を他のマイクログリッド制御システムに送信し、他のマイクログリッド制御システムの各々から新しい反復を受信する。マイクログリッド制御システムは、それ自体の新しい反復を他のマイクログリッド制御システムによって決定された新しい反復と比較して、最新の反復のセットが収束したかどうか、すなわち、反復の標準偏差が閾値を下回っているかどうかを判断する。たとえば、閾値は、数例を挙げると、σ<0.001またはσ<0.1であり得る。マイクログリッド制御システムは、最後の反復が収束するまで、状態推定の新しい反復を決定し続ける。完了した状態推定である最後の反復は、いくつか例を挙げると、市場シミュレーション、安定性分析、および需要応答のために用いられ得る。
図2を参照すると、非同期通信ネットワークを用いる分散型アプリケーションの実行中におけるエージェントノード間の例示的なデータ交換のためのプロセス200が示されている。たとえば、分散型アプリケーションが重み付き最小二乗などの再帰的アルゴリズムを用いる分散型状態推定アプリケーションである場合、プロセス200によって決定される反復は、各エージェントノードによって決定される反復が収束するまで再帰的に決定されるであろう状態推定の反復であり得る。
プロセス200は、分散システムの1つのエージェントノードによって行なわれるステップを対象とするが、分散システム内のエージェントノードの各々は、分散アプリケーションを実行するためにプロセス200を実行することが理解されるだろう。たとえば、プロセス200の1つ以上の局面の省略、さらなる条件および動作の追加、ならびに/または動作および条件の個別プロセスへの再編成もしくは分離を含む、プロセス200に対するいくつかの変更および修正が企図されることをさらに理解されたい。
プロセス200は動作201において開始され、エージェントノードは、他のエージェントノードからは受信されないデータを用いて第1の反復を決定する。第1の反復は、エージェントノードと直接通信する測定デバイスから受信した測定値を用いて決定され得る。当該反復は、分散システムのエージェントノードによって生成される反復の第1のセットのうちの1の反復である。
プロセス200は動作203に進み、ここで、エージェントノードは、ローカルベクトルクロックを生成または更新することによってローカルベクトルクロックを決定する。ローカルベクトルクロックは複数の要素を含む。ここで、1つの要素は、エージェントノードによって決定された反復の数に対応しており、他の要素は、分散システムの他のエージェントノードの各々によって決定された受信済み反復の数に対応する。たとえば、エージェントノードのためのローカルベクトルクロックはベクトルVによって表わされ得る。この場合、要素V[k]は、エージェントノードによって決定された反復の数であり、要素V[l]は、エージェントノードによって受信されるとともに、分散システムの別のエージェントノードであるエージェントノードlによって決定された反復の数である。エージェントノードが新しい反復を決定するたびに、V[k]は1ずつインクリメントされる。エージェントノードがエージェントノードlから反復を受信するたびに、V[l]が1ずつインクリメントされる。
プロセス200は動作205に進み、ここで、エージェントノードは、第1の反復およびローカルベクトルクロックを分散システムのうちの1つ以上の隣接エージェントノードに送信する。隣接エージェントノードは、エージェントノードと直接通信する分散システムのエージェントノードである。
プロセス200は動作207に進み、ここで、エージェントノードは、反復の第1のセットのうちエージェントノードlによって決定された反復と、エージェントノードlによって決定されたリモートベクトルクロックとを受信する。特定の実施形態では、エージェントノードは、エージェントノード1からの反復の第1のセットのうち2つ以上の反復と、エージェントノードによって受信されている複数の反復を反映するリモートベクトルクロックとを受信し得る。
プロセス200は動作209に進み、ここで、エージェントノードは、受信したリモートベクトルクロックに基づいてローカルベクトルクロックを更新する。エージェントノードは、以下の式を用いてローカルベクトルクロックを更新し得る。
[l]=max(V[l],V[l]) (7)
プロセス200は条件211に進み、ここで、エージェントノードは、更新されたベクトルクロックに基づいて、当該エージェントノードが他のエージェントノードから反復の第1のセットのうちの全ての反復を受信したかどうかを判断する。たとえば、エージェントノードは、Vの各要素が少なくとも1であると判断することによって、反復の第1のセットのうちの全ての反復が受信されたと判断してもよい。エージェントノードが反復の第1のセットのうちの全ての反復を受信した場合、プロセス200は条件215に進む。エージェントノードが反復の第1のセットのうちの全ての反復を受信していない場合、プロセス200は動作213に進む。
動作213中、エージェントノードは、動作207において受信した1つ以上の反復と、動作209において更新されたローカルベクトルクロックとを、1つ以上の隣接エージェントノードに送信する。次いで、プロセス200は動作207に進む。プロセス200は、エージェントノードが反復の第1のセットのうちの全ての反復を受信するまで、動作207、動作209、条件211、および動作213のループで続けられる。
条件215で、エージェントノードは、当該エージェントノードによって直近に決定された反復が最後の反復であるかどうかを判断する。たとえば、エージェントノードは、直近に完了した反復のセットが収束していないかどうかを判断する必要があるかもしれない。エージェントノードが新しい反復を決定する必要がある場合、プロセス200は動作217に進む。エージェントノードが新しい反復を決定する必要がない場合、プロセス200は動作219に進む。
動作217中、エージェントノードは、当該エージェントノードによって直近に決定された反復が最後の反復ではないと判断することに応答して、反復の第1のセットに基づいて新しい反復を決定する。エージェントノードはまた、新しい反復を決定することに応答してローカルベクトルを更新する。新しい反復は、分散システムのエージェントノードによって決定された反復の第2のセットのうちの1反復である。特定の実施形態では、エージェントノードは、少なくとも1つの他のエージェントノードが反復の第1のセットのうちの全ての反復を受信してしまう前に、新しい反復を決定する。
プロセス200は動作218に進み、ここで、エージェントノードは、動作217からの新しい反復および更新されたローカルベクトルクロックを1つ以上の隣接エージェントノードに送信する。次いで、プロセス200は動作207に戻る。プロセス200は、他のエージェントノードから反復を受信し、ベクトルクロックを更新し、直近に決定された新しい反復が最後の反復であるとエージェントノードが判断するまで更新済みベクトルクロックに基づいて新しい反復を決定することを続ける。
動作219中、エージェントノードは、最後の反復に基づいて分散システムを動作させるために、最後の反復をローカル制御アプリケーションに送信する。たとえば、最後の反復がマイクログリッド状態推定である場合、エージェントノードは、最後の反復に基づいて制御可能なデバイス設定ポイントを変更してもよい。
図3を参照すると、図1のシステム100によって実行される図2の例示的なデータ交換プロセス200を示すシーケンス図300が示される。図300に示すように、各エージェントノードは3つの反復を決定する。各エージェントノードごとの第1の反復は同時に決定されるが、第2の反復および第3の反復は、別々の時間にエージェントノードによって決定される。非同期通信ネットワーク160を用いて、各エージェントノードは、別々の時間に反復の完全なセットを受信し、反復の完全なセットを用いて新しい反復を決定し、次いで、新しい反復を更新済みベクトルクロックとともに他のエージェントノードに送信する。
図4を参照すると、非同期通信ネットワークを用いた分散型アプリケーションの実行中におけるエージェントノード間の例示的なデータ交換のためのプロセス400が示されている。たとえば、分散型アプリケーションが重み付き最小二乗などの再帰的アルゴリズムを用いる分散型状態推定アプリケーションである場合、プロセス400によって決定される反復は、各エージェントノードによって決定される反復が収束するまで再帰的に決定されるであろう状態推定の反復であり得る。
プロセス400は、分散システムの1つのエージェントノードによって行なわれるステップを対象としているが、当該分散システム内のエージェントノードの各々が分散アプリケーションを実行するためにプロセス400を実行することを理解されたい。たとえば、プロセス400の1つ以上の局面の省略、さらなる条件および動作の追加、ならびに/または動作および条件の個別プロセスへの再編成もしくは分離を含む、プロセス400に対するいくつかの変更および修正が企図されることをさらに理解されたい。
プロセス200とは異なり、プロセス400は、エージェントノードが新しい反復を決定する前に反復のセットのうちの全ての反復を受信するのを待機することはない。代わりに、以下でより詳細に説明するように、各エージェントノードは、新しい反復を決定するための時間に先行するティッカー期間中に受信された反復を用いて、新しい反復を決定する。
プロセス400は動作401において開始され、ここで、エージェントノードは、複数の信頼ファクタを含む信頼行列Aを決定する。各信頼ファクタは、複数の反復のうち、複数のエージェントノードのうちの1つによって決定された反復に適用される重みに対応している。重みは、一例を挙げると、数式セット(5)を用いて決定され得る。
プロセス400は動作403に進み、ここでエージェントノードは第1の反復を決定する。エージェントノードは、別のエージェントノードを介して送信されないローカルデータまたは測定値を用いて第1の反復を決定してもよい。たとえば、エージェントノードは、以下の数式セットを用いて第1の反復を決定してもよい。ここで、
Figure 0007437585000011
は、反復iにおけるエージェントマイクログリッド制御システムkの状態を示し、ωk,iは、反復iにおけるエージェントkについての中間変数であり、μは、エージェントマイクログリッド制御システムkの非負ステップサイズであり、αlkは、エージェントノードlによって決定されるとともにエージェントノードkによって受信される反復についての信頼ファクタであり、∇ωJk,i-1)は、反復iにおける中間状態ωのエージェントマイクログリッド制御システムkについての確率的勾配である。
Figure 0007437585000012
プロセス400は動作405に進み、ここで、エージェントノードは、第1のティッカー期間中に他のエージェントノードのうちの1つ以上から1つ以上の反復を受信する。第1のティッカー期間は、第1の反復後に始まり、動作407の開始前に終了する。
プロセス400は動作407に進み、ここで、エージェントノードは、動作405中に受信された反復に基づいて信頼行列を更新する。信頼行列を更新するために、エージェントノードは、ティッカー期間中にエージェントノードに反復を送信しなかったエージェントノードから受信した反復に適用される任意の重みを減少させる。信頼行列を更新するステップはまた、任意の重みを減少させたのと等しい量だけ、エージェントノードによって決定された反復に適用される重みを増加させるステップを含み得る。たとえば、信頼行列は以下の数式セットを用いて更新されてもよい。
Figure 0007437585000013
プロセス400は動作408に進み、ここで、エージェントノードは、動作403においてティッカー期間中に受信された反復に基づいてステップサイズを更新する。ステップサイズを更新するために、エージェントノードは、ティッカー期間中にエージェントノードに反復を送信しなかったエージェントノードから受信した反復に適用されるいずれのステップサイズも減少させる。たとえば、ステップサイズは以下の数式セットを用いて更新されてもよい。
Figure 0007437585000014
プロセス400は動作409に進み、ここで、エージェントノードは、動作405中に受信された反復と動作407からの更新済み信頼行列とに基づいて、ティッカー期間後の第2の反復を決定する。特定の実施形態では、エージェントノードは、動作408で更新されたステップサイズに部分的に基づいて第2の反復を決定する。たとえば、エージェントノードは、数式セット(8)を用いて第2の反復を決定してもよい。
プロセス400は条件411に進み、ここで、エージェントノードは、直近に決定された反復が最後の反復であるかどうかを判断する。たとえば、エージェントノードは、それ自体の新しい反復を、他のエージェントノードから受信した他の反復と比較して、それらが収束したかどうか、すなわち、反復の標準偏差が閾値未満であるかどうか、を判断する。たとえば、閾値は、数例を挙げると、σ<0.001またはσ<0.1であってもよい。特定の実施形態では、エージェントノードは、当該エージェントノードが一定数の反復を完了したかどうかを判断することによって、最新の反復が最後の反復であることを判断し得る。
直近に判断された反復が最後の反復でない場合、プロセス400は動作405に進み、プロセス400は、新しいティッカー期間中に新しい反復を繰返し受信し、新しい反復に基づいて信頼行列を更新し、直近の反復が最後の反復であるとエージェントノードが判断するまで、新しいティッカー期間中に受信された反復および更新済みの信頼行列を用いて新しい反復を決定する。
動作413中、エージェントノードは、最後の反復に基づいて分散システムを動作させるために、最後の反復をローカル制御アプリケーションに送信する。たとえば、最後の反復がマイクログリッド状態推定である場合、エージェントノードは、最後の反復に基づいて制御可能なデバイス設定ポイントを変更してもよい。
図5を参照すると、図1のシステム100によって実行される図4の例示的なデータ交換プロセス400を示すシーケンス図500が示されている。図500は、複数のティッカー期間によって分離された各エージェントノードによって実行される一連の反復を示す。たとえば、エージェントノード121は、ティッカー期間505によって時間が分離された反復501および503を決定する。図500に示すように、各エージェントノードごとの複数のティッカー期間の時間長は等しくてもよい。他の実施形態では、エージェントノードについての複数のティッカー期間は、さまざまな時間長のティッカー期間を含んでもよい。図500に示すように、エージェントノード121、131および141についてのティッカー期間は、エージェントノード111についてのティッカー期間と比較して時間の長さが異なっている。
図6を参照すると、グラフ610およびグラフ620を含む複数のグラフ600が示されている。グラフ610は、図2の例示的なデータ交換プロセス200を用いるシステム100におけるバス153の状態推定を示す。グラフ610は複数の推定線611を含み、各線は、1つのエージェントノードによって決定された各反復の値を表わす。各エージェントノードによって決定された15回目の反復によって、状態推定は収束した。
グラフ620は、図4の例示的なデータ交換プロセス400を用いたシステム100におけるバス153の状態推定を示す。グラフ620は複数の推定線621を含み、各線は、1つのエージェントノードによって決定された各反復の値を表わす。各エージェントノードによって決定された50回目の反復によって、状態推定は収束した。プロセス400は収束させるのにより多くの反復を必要とするが、エージェントノードの数およびティッカー期間の長さは、プロセス400が収束に要する時間がプロセス200の場合よりも短くなるように構築され得ることに留意することが重要である。エージェントノードの数が増加するにつれて、プロセス200は、収束させるのにより多くの時間を要する。したがって、エージェントノードのより小さいセットに対してプロセス200を用い、エージェントノードのより大きいセットに対してプロセス400を用いることが有利である。
図7を参照すると、例示的なプロセス200および例示的なプロセス400に基づくノード相互通信を用いたマイクログリッド状態推定結果を示す表が示されている。表の各行は、マイクログリッド内のバスの電圧の大きさおよび位相角についての推定値および実際値を含む。プロセス200およびプロセス400の状態推定結果は、非同期通信ネットワークを用いて状態推定を実行するにもかかわらず、状態推定によって推定される実際値に対応している。
ここで、いくつかの例示的な実施形態についてさらに説明する。一実施形態は方法であって、分散型システムにおいて非同期的に通信するように構築された複数のエージェントノードで、複数のエージェントノードの各々によって決定された反復を含む反復の第1のセットを決定するステップと、複数のエージェントノードのうちの第1のエージェントノードで、ローカルベクトルクロックを決定するステップと、第1のエージェントノードで、反復の第1のセットのうちの第1の反復と、第1の反復に基づいて決定されたリモートベクトルクロックとを受信するステップと、第1のエージェントノードで、受信されたリモートベクトルクロックに基づいてローカルベクトルクロックを更新するステップと、第1のエージェントノードで、反復の第1のセットのうちの全ての反復がローカルベクトルクロックに基づいて受信されたと判断した後、反復の第1のセットに基づいて反復の第2のセットのうちの第1の反復を決定するステップとを含む。
前述の方法の特定の形態では、ローカルベクトルクロックは複数の要素を含み、ローカルベクトルクロックの第1の要素は、第1のエージェントノードで決定された反復の数に対応しており、ローカルベクトルクロックの残りの要素の各々は、他のエージェントノードのうちの1つによって決定された受信済み反復の数に対応する。特定の形態では、当該方法はさらに、他のエージェントノードによって決定された反復の第1のセットのうちの全ての反復が受信されていないと判断することに応答して、第1のエージェントノードで、反復の第1のセットのうちの第1の反復と更新されたローカルベクトルクロックとを送信するステップを含む。特定の形態では、第1のエージェントノードで、反復の第2のセットのうちの第1の反復を決定するステップは、第1の反復が最後の反復ではないと第1のエージェントノードが判断することに応答して行なわれる。当該方法は、反復の第2のセットのうちの第1の反復に基づいてローカルベクトルクロックを更新するステップと、第1のエージェントノードで、反復の第2のセットのうちの第1の反復と、反復の第2のセットのうちの第1の反復に基づいて更新されたローカルベクトルクロックとを送信するステップとを含む。特定の形態では、複数のエージェントノードのうちの少なくとも1つのエージェントノードが反復の第1のセットのうちの全ての反復を受信する前に、反復の第2のセットのうちの第1の反復が第1のエージェントノードによって決定される。特定の形態では、複数のエージェントノードは、共通の時間ソースに同期されることなく通信するように構築される。特定の形態では、当該方法はさらに、反復を繰返し受信するステップと、ローカルベクトルクロックを更新するステップと、直近に決定された反復が最後の反復であると第1のエージェントノードが判断するまで、ローカルベクトルクロックに基づいて新しい反復を決定するステップとを含む。特定の形態では、複数のエージェントノードはマイクログリッドコントローラであり、最後の反復は状態推定であり、当該方法は、第1のエージェントノードで、最後の反復に基づいてマイクログリッドの制御可能デバイスを動作させるステップを含む。特定の形態では、複数のエージェントノードは産業自動化コントローラであり、最後の反復は状態推定であり、当該方法は、第1のエージェントノードで、最後の反復に基づいて産業自動化システムの制御可能デバイスを動作させるステップを含む。
別の例示的な実施形態は分散型システムであって、第1のエージェントノードを含む複数のエージェントノードと、複数のエージェントノードが非同期的に通信することを可能にするように構築された通信ネットワークとを含む。複数のエージェントノードは各々、メモリデバイスに格納された命令のセットを含み、当該命令のセットは、対応するエージェントノードの処理デバイスによって実行されると、複数のエージェントノードの各々によって決定された反復を含む反復の第1のセットを決定するのに有効である。第1のエージェントノードは、第1のエージェントノードのメモリデバイスに格納された命令のセットを、第1のエージェントノードの処理デバイスで実行するように構築される。当該命令のセットは、ローカルベクトルクロックを決定し、反復の第1のセットのうちの第1の反復と第1の反復に基づいて決定されたリモートベクトルクロックとを受信し、受信したリモートベクトルクロックに基づいてローカルベクトルクロックを更新し、反復の第1のセットのうちの全ての反復がローカルベクトルクロックに基づいて受信されたと判断した後、反復の第1のセットに基づいて反復の第2のセットのうちの第1の反復を決定するのに有効である。
別の例示的な実施形態は方法であって、当該方法は、非同期的に通信するように構築された第1のエージェントノードと複数のエージェントノードとを含む分散型システムを動作させるステップと、複数のエージェントノードの各エージェントノードで、複数のティッカー期間によって時間が分離された複数の反復を決定するステップと、第1のエージェントノードで、複数の信頼ファクタを含む信頼行列を決定するステップとを含み、各々の信頼ファクタは、複数の反復のうち、複数のエージェントノードのうちの1つによって決定された反復に適用される重みに対応しており、当該方法はさらに、第1のエージェントノードで第1の反復を決定するステップと、第1のエージェントノードで、第1の反復の後に始まる第1のティッカー期間中に、複数の反復のうち、複数のエージェントノードのうちの一部分によって決定された一部分を受信するステップと、第1のエージェントノードで、複数の反復のうちの一部分に基づいて信頼行列を更新するステップと、第1のエージェントノードで、複数の反復のうちの一部分および更新された信頼行列に基づいて、第1のティッカー期間後の第2の反復を決定するステップとを含む。
前述の方法の特定の形態では、当該方法はさらに、第1のエージェントノードで、第1の反復および第2の反復を含む第2の複数の反復を決定するステップを含み、複数の反復は、第2の複数のティッカー期間によって時間が分離されており、第2の複数のティッカー期間は各々、時間の長さが等しい。特定の形態では、第1の複数のティッカー期間のうちのティッカー期間の一部分は、第2の複数のティッカー期間のうちのティッカー期間とは時間の長さが異なっている。特定の形態では、複数の反復のうち第1のティッカー期間中に受信された一部分に基づいて信頼行列を更新するステップは、ティッカー期間中に第1のエージェントノードに反復を送信しなかった複数のエージェントノードの残りから受信された反復に適用される任意の重みを減少させるステップを含む。特定の形態では、複数の反復のうち第1のティッカー期間中に受信された一部分に基づいて信頼行列を更新するステップは、第1のエージェントノードによって決定された反復に適用される重みを、任意の重みを減少させたのと等しい量だけ増加させるステップを含む。特定の形態では、当該方法はさらに、複数の反復のうち第1のティッカー期間中に受信された一部分に基づいてステップサイズを決定するステップを含み、第1のティッカー期間の後に第2の反復を決定するステップは、決定されたステップサイズに部分的に基づいている。特定の形態では、第1の反復、第2の反復、および複数の反復は、再帰的最小二乗に基づいて複数のエージェントノードによって決定される。特定の形態では、第1の反復、第2の反復、および複数の反復は状態推定であり、当該方法はさらに、第1のエージェントノードが最後の反復を決定するまで、第1のエージェントノードで、第1の反復および第2の反復を含む一連の反復を決定するステップを含む。特定の形態では、複数のエージェントノードはマイクログリッドコントローラであり、最後の反復は最終状態推定であり、当該方法は、第1のエージェントノードで、最後の反復に基づいてマイクログリッドの制御可能デバイスを動作させるステップを含む。
さらに別の例示的な実施形態は分散型システムであって、第1のエージェントノードと、複数のエージェントノードと、第1のエージェントノードおよび複数のエージェントノードが非同期的に通信することを可能にするように構築された通信ネットワークとを含み、複数のエージェントノードは各々、第1のメモリデバイスに格納された命令の第1のセットを含む。当該命令の第1のセットは、対応するエージェントノードの第1の処理デバイスによって実行されると、複数のティッカー期間によって時間が分離された複数の反復を決定するのに有効である。第1のエージェントノードは、当該第1のエージェントノードの第2の処理デバイスで、第1のエージェントノードの第2のメモリデバイスに格納された命令の第2のセットを実行するように構築されている。当該命令の第2のセットは、複数の信頼ファクタを含む信頼行列を決定するのに有効であり、各信頼ファクタは、複数の反復のうち、複数のエージェントノードのうちの1つによって決定された反復に適用される重みに対応しており、当該命令の第2のセットはさらに、第1の反復を決定し、第1の反復の後に始まる第1のティッカー期間中に複数のエージェントノードのうちの一部分によって決定された複数の反復のうちの一部分を受信し、複数の反復のうちの一部分に基づいて信頼行列を更新し、複数の反復のうちの一部分および更新された信頼行列に基づいて、第1のティッカー期間後の第2の反復を決定するのに有効である。
本開示は添付の図面および上述の記載において詳細に図示および説明されてきたが、本開示は、特徴を限定するのではなく例示するものと見なされるべきであり、特定の例示的な実施形態のみが図示および説明されていること、ならびに、本開示の精神の範囲内に収まるすべての変更および変形が保護されることが望ましいことを理解されたい。上述の記載において利用される「好まれる」、「好ましくは」、「好ましい」、または「より好ましい」などの語の使用は、そのように記載される特徴がより望ましい可能性があることを示しているが、必ずしも必要でなくてもよく、それが欠如している実施形態も、添付の特許請求の範囲によって定義されている本開示の範囲内となるよう企図され得ると理解されるべきである。請求項を読む際に、「a」、「an」といった不定冠詞、「少なくとも1つ(at least one)」、または「少なくとも一部分(at least one portion)」などの語が用いられる場合、請求項において特段の記載がない限り、請求項を1つのアイテムだけに限定する意図がないことが意図されている。前置詞「の(of)」は、それが用いられる文脈によって示されるように、別のアイテムとの関連付けまたは別のアイテムへのつながり、さらに、他のアイテムへの帰属または他のアイテムとのつながりを意味し得る。語句「に結合される(coupled to)」、「と結合される(coupled with)」などは、間接的な接続および結合を含んでおり、さらに、そうでないと明記されない限り、直接的な結合または接続を、必ずしも必要とはしないが含んでいる。「少なくとも一部分(at least a portion)」および/または「一部分(a portion)」という語が用いられる場合、そうでないと明記されない限り、アイテムは1つの部分および/またはアイテム全体を含み得る。

Claims (20)

  1. 方法であって、
    分散型システムにおいて非同期的に通信するように構築された複数のエージェントノードで、前記複数のエージェントノードの各々によって決定される反復を含む反復の第1のセットを決定するステップと、
    前記複数のエージェントノードのうちの第1のエージェントノードで、ローカルベクトルクロックを決定するステップと、
    前記第1のエージェントノードで、前記反復の第1のセットのうちの第1の反復と、前記第1の反復に基づいて決定されたリモートベクトルクロックとを受信するステップと、
    前記第1のエージェントノードで、前記受信されたリモートベクトルクロックに基づいて前記ローカルベクトルクロックを更新するステップと、
    前記第1のエージェントノードで、前記反復の第1のセットのうちの全ての反復が前記ローカルベクトルクロックに基づいて受信されたと判断した後、前記反復の第1のセットに基づいて反復の第2のセットのうちの第1の反復を決定するステップとを含む、方法。
  2. 前記ローカルベクトルクロックは複数の要素を含み、前記ローカルベクトルクロックの第1の要素は、前記第1のエージェントノードで決定された反復の数に対応しており、前記ローカルベクトルクロックの残りの要素の各々は、他のエージェントノードのうちの1つによって決定された受信された反復の数に対応する、請求項1に記載の方法。
  3. 他のエージェントノードによって決定された前記反復の第1のセットのうちの全ての反復が受信されていないと判断することに応答して、前記第1のエージェントノードで、前記反復の第1のセットのうちの前記第1の反復と前記更新されたローカルベクトルクロックとを送信するステップをさらに含む、請求項1または2に記載の方法。
  4. 前記第1のエージェントノードで、前記反復の第2のセットのうちの前記第1の反復を決定するステップは、前記第1の反復が最後の反復ではないと前記第1のエージェントノードが判断することに応答して行なわれ、前記方法は、前記反復の第2のセットのうちの前記第1の反復に基づいて前記ローカルベクトルクロックを更新するステップと、前記第1のエージェントノードで、前記反復の第2のセットのうちの前記第1の反復と、前記反復の第2のセットのうちの前記第1の反復に基づいて更新された前記ローカルベクトルクロックとを送信するステップとを含む、請求項1から3のいずれか1項に記載の方法。
  5. 前記反復の第2のセットのうち前記第1の反復は、前記複数のエージェントノードのうちの少なくとも1つのエージェントノードが前記反復の第1のセットのうちの全ての反復を受信する前に、前記第1のエージェントノードによって決定される、請求項1から4のいずれか1項に記載の方法。
  6. 前記複数のエージェントノードは、共通の時間ソースに同期されることなく通信するように構築される、請求項1から5のいずれか1項に記載の方法。
  7. 反復を繰返し受信し、前記ローカルベクトルクロックを更新し、直近に決定された反復が最後の反復であると前記第1のエージェントノードが判断するまで前記ローカルベクトルクロックに基づいて新しい反復を決定するステップをさらに含む、請求項1から6のいずれか1項に記載の方法。
  8. 前記複数のエージェントノードはマイクログリッドコントローラであり、前記最後の反復は状態推定であり、前記方法は、前記第1のエージェントノードで、前記最後の反復に基づいてマイクログリッドの制御可能デバイスを動作させるステップを含む、請求項7に記載の方法。
  9. 前記複数のエージェントノードは産業自動化コントローラであり、前記最後の反復は状態推定であり、前記方法は、前記第1のエージェントノードで、前記最後の反復に基づいて産業自動化システムの制御可能デバイスを動作させるステップを含む、請求項7に記載の方法。
  10. 分散型システムであって、
    第1のエージェントノードを含む複数のエージェントノードと、
    前記複数のエージェントノードが非同期的に通信することを可能にするように構築された通信ネットワークとを含み、
    前記複数のエージェントノードは各々、メモリデバイスに格納された命令のセットを含み、前記命令のセットは、対応するエージェントノードの処理デバイスによって実行されると、前記複数のエージェントノードの各々によって決定された反復を含む反復の第1のセットを決定するのに有効であり、
    前記第1のエージェントノードは、前記第1のエージェントノードの前記メモリデバイスに格納された前記命令のセットを、前記第1のエージェントノードの前記処理デバイスで実行するように構築されており、前記命令のセットは、
    ローカルベクトルクロックを決定し、
    前記反復の第1のセットのうちの第1の反復と、前記第1の反復に基づいて決定されたリモートベクトルクロックとを受信し、
    前記受信したリモートベクトルクロックに基づいて前記ローカルベクトルクロックを更新し、
    前記ローカルベクトルクロックに基づいて前記反復の第1のセットのうちの全ての反復が受信されたと判断した後に、前記反復の第1のセットに基づいて反復の第2のセットのうちの第1の反復を決定するのに有効である、分散型システム
  11. 方法であって、
    非同期的に通信するように構築された第1のエージェントノードと複数のエージェントノードとを含む分散型システムを動作させるステップと、
    前記複数のエージェントノードの各エージェントノードで、複数のティッカー期間によって時間が分離された複数の反復を決定するステップと、
    前記第1のエージェントノードで、複数の信頼ファクタを含む信頼行列を決定するステップとを含み、各信頼ファクタは、前記複数の反復のうち、前記複数のエージェントノードのうちの1つによって決定された反復に適用される重みに対応しており、前記方法はさらに、
    前記第1のエージェントノードで、第1の反復を決定するステップと、
    前記第1のエージェントノードで、前記第1の反復の後に始まる第1のティッカー期間中に前記複数のエージェントノードのうちの一部分によって決定された前記複数の反復のうちの一部分を受信するステップと、
    前記第1のエージェントノードで、前記複数の反復のうちの前記一部分に基づいて前記信頼行列を更新するステップと、
    前記第1のエージェントノードで、前記複数の反復のうち前記一部分および前記更新された信頼行列に基づいて、前記第1のティッカー期間の後の第2の反復を決定するステップとを含む、方法。
  12. 前記第1のエージェントノードで、前記第1の反復および前記第2の反復を含む第2の複数の反復を決定するステップをさらに含み、前記複数の反復は、第2の複数のティッカー期間によって時間が分離されており、前記第2の複数のティッカー期間は各々、時間の長さが等しい、請求項11に記載の方法。
  13. 前記第1のティッカー期間は、前記第2の複数のティッカー期間のうちのティッカー期間とは時間の長さが異なる、請求項12に記載の方法。
  14. 前記複数の反復のうち前記第1のティッカー期間中に受信された前記一部分に基づいて前記信頼行列を更新するステップは、前記ティッカー期間中に前記第1のエージェントノードに反復を送信しなかった前記複数のエージェントノードの残りから受信された反復に適用される任意の重みを減少させるステップを含む、請求項11から13のいずれか1項に記載の方法。
  15. 前記複数の反復のうち前記第1のティッカー期間中に受信された前記一部分に基づいて前記信頼行列を更新するステップは、前記第1のエージェントノードによって決定された反復に適用される前記重みを、任意の重みを減少させたのと等しい量だけ増加させるステップを含む、請求項14に記載の方法。
  16. 前記複数の反復のうち前記第1のティッカー期間中に受信された前記一部分に基づいてステップサイズを決定するステップをさらに含み、前記第1のティッカー期間の後に前記第2の反復を決定するステップは、前記決定されたステップサイズに部分的に基づいている、請求項11から15のいずれか1項に記載の方法。
  17. 前記第1の反復、前記第2の反復、および前記複数の反復は、再帰最小二乗に基づいて前記複数のエージェントノードによって決定される、請求項11から16のいずれか1項に記載の方法。
  18. 前記第1の反復、前記第2の反復、および前記複数の反復は状態推定であり、前記方法はさらに、前記第1のエージェントノードが最後の反復を決定するまで、前記第1のエージェントノードで、前記第1の反復および前記第2の反復を含む一連の反復を決定するステップを含む、請求項11から17のいずれか1項に記載の方法。
  19. 前記複数のエージェントノードはマイクログリッドコントローラであり、前記最後の反復は最終状態推定であり、前記方法は、前記第1のエージェントノードで、前記最後の反復に基づいてマイクログリッドの制御可能デバイスを動作させるステップを含む、請求項18に記載の方法。
  20. 分散型システムであって、
    第1のエージェントノードと、
    複数のエージェントノードと、
    前記第1のエージェントノードと前記複数のエージェントノードとが非同期的に通信することを可能にするように構築された通信ネットワークとを含み、
    前記複数のエージェントノードは各々、第1のメモリデバイスに格納された命令の第1のセットを含み、前記命令の第1のセットは、対応するエージェントノードの第1の処理デバイスによって実行されると、複数のティッカー期間によって時間が分離される複数の反復を決定するのに有効であり、
    前記第1のエージェントノードは、前記第1のエージェントノードの第2の処理デバイスで、前記第1のエージェントノードの第2のメモリデバイスに格納された命令の第2のセットを実行するように構築されており、前記命令の第2のセットは、
    複数の信頼ファクタを含む信頼行列を決定するのに有効であり、各々の信頼ファクタは、前記複数の反復のうち、前記複数のエージェントノードのうちの1つによって決定される反復に適用される重みに対応しており、前記命令の第2のセットはさらに、
    第1の反復を決定し、
    前記第1の反復の後に始まる第1のティッカー期間中に前記複数のエージェントノードのうちの一部分によって決定された前記複数の反復のうちの一部分を受信し、
    前記複数の反復のうちの前記一部分に基づいて前記信頼行列を更新し、 前記複数の反復のうちの前記一部分および前記更新された信頼行列に基づいて、前記第1のティッカー期間の後の第2の反復を決定するのに有効である、分散型システム。
JP2022537656A 2019-12-18 2020-12-18 分散型システムにおけるデータ交換および処理同期 Active JP7437585B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/718,685 US11689618B2 (en) 2019-12-18 2019-12-18 Data exchange and processing synchronization in distributed systems
US16/718,685 2019-12-18
PCT/EP2020/087262 WO2021123340A1 (en) 2019-12-18 2020-12-18 Data exchange and processing synchronization in distributed systems

Publications (2)

Publication Number Publication Date
JP2023507607A JP2023507607A (ja) 2023-02-24
JP7437585B2 true JP7437585B2 (ja) 2024-02-26

Family

ID=74175786

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022537656A Active JP7437585B2 (ja) 2019-12-18 2020-12-18 分散型システムにおけるデータ交換および処理同期

Country Status (7)

Country Link
US (2) US11689618B2 (ja)
EP (1) EP4055802B1 (ja)
JP (1) JP7437585B2 (ja)
CN (1) CN114830617A (ja)
AU (1) AU2020406229B2 (ja)
ES (1) ES2953927T3 (ja)
WO (1) WO2021123340A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160337470A1 (en) 2015-05-14 2016-11-17 Tmaxsoft. Co., Ltd. Method and server for assigning relative order to message by using vector clock and delivering the message based on the assigned relative order under distributed environment
WO2018142258A1 (en) 2017-01-31 2018-08-09 nChain Holdings Limited Computer-implemented system and method for updating a network's knowledge of the network's topology

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6574665B1 (en) 1999-02-26 2003-06-03 Lucent Technologies Inc. Hierarchical vector clock
ATE289456T1 (de) * 2001-12-21 2005-03-15 Abb Research Ltd Zustandsbestimmung für ein energieverteilungsnetz
CN100583900C (zh) * 2006-11-16 2010-01-20 南京邮电大学 基于智能代理的无线传感器网络数据聚合路径规划方法
US9863985B2 (en) * 2012-04-13 2018-01-09 Regents Of The University Of Minnesota State estimation of electrical power networks using semidefinite relaxation
US9780563B2 (en) * 2013-02-28 2017-10-03 Hitachi, Ltd. Power system control system and distributed controller used in same
US9658260B2 (en) * 2013-09-04 2017-05-23 Abb Schweiz Ag Power system state estimation using a two-level solution
US20160071013A1 (en) * 2014-09-10 2016-03-10 Mitsubishi Electric Research Laboratories, Inc. Method for Estimating Optimal Power Flows in Power Grids using Consensus-Based Distributed Processing
US10440553B2 (en) 2017-06-01 2019-10-08 Arizona Board Of Regents On Behalf Of Arizona State University Distributed network center and area estimation
AU2017431149A1 (en) * 2017-09-06 2020-03-05 North Carolina State University Aggregated distribution for energy demand response
US11399042B2 (en) * 2018-07-25 2022-07-26 George Mason University Secure overlay communication model for decentralized autonomous power grid

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160337470A1 (en) 2015-05-14 2016-11-17 Tmaxsoft. Co., Ltd. Method and server for assigning relative order to message by using vector clock and delivering the message based on the assigned relative order under distributed environment
WO2018142258A1 (en) 2017-01-31 2018-08-09 nChain Holdings Limited Computer-implemented system and method for updating a network's knowledge of the network's topology

Also Published As

Publication number Publication date
EP4055802A1 (en) 2022-09-14
US11689618B2 (en) 2023-06-27
ES2953927T3 (es) 2023-11-17
AU2023203713A1 (en) 2023-07-06
AU2020406229A1 (en) 2022-07-21
US20230275963A1 (en) 2023-08-31
WO2021123340A1 (en) 2021-06-24
EP4055802B1 (en) 2023-08-16
JP2023507607A (ja) 2023-02-24
AU2020406229B2 (en) 2023-07-06
US20210194955A1 (en) 2021-06-24
EP4055802C0 (en) 2023-08-16
CN114830617A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
Zamzam et al. Physics-aware neural networks for distribution system state estimation
JP7210711B2 (ja) ネットワーク化されたマイクログリッドのためのセキュアな分散型状態推定
EP1261096B1 (en) Stability prediction for an electric power network
US9829880B2 (en) System and method for modelling load in an electrical power network
JP5322716B2 (ja) 配電系統の分散型電源出力推定装置および方法
Cavraro et al. Bus clustering for distribution grid topology identification
JP2021136745A (ja) 状態推定装置、状態推定プログラム、状態推定方法
Xie et al. Consensus weighting of a multi-agent system for load shedding
Aristidou et al. Dynamic simulations of combined transmission and distribution systems using decomposition and localization
JP7437585B2 (ja) 分散型システムにおけるデータ交換および処理同期
JP2008301663A (ja) 発電機接続容量算出方法、その方法の実行に用いるプログラム及び発電機接続容量算出装置
EP3750223A1 (en) Predicting voltage stability of a power system post-contingency
CN111316522A (zh) 输电系统中基于电压下垂的方法
Adewole et al. Extended synchrophasor‐based online voltage stability assessment using synchronous generator‐derived indices
Tai et al. Optimal PMU placement for power system state estimation with random communication packet losses
JP7460873B2 (ja) 電力システムの適応状態推定
Klettke et al. Modelling of stochastically dependent forecast errors for load flow simulations in the transmission grid using convolution
Wang et al. Objective pdf-shaping-based economic dispatch for power systems with intermittent generation sources via simultaneous mean and variance minimization
JP2023179323A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
Reponen et al. RTDS simulations of coordinated voltage control in low voltage distribution network
Nguyen et al. Measurement-Based Formulation for Online Optimal Reactive Power Dispatch Problem
JP6328323B2 (ja) 制御装置、制御方法、及び、プログラム
Beykverdi et al. Optimal location of PMUs in distribution network for best state estimation based on ACO-NM hybrid algorithm
JPWO2021144390A5 (ja)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220803

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231129

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: 20231205

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20231219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231219

R150 Certificate of patent or registration of utility model

Ref document number: 7437585

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150