(57)【要約】【課題】ネットワーク接続された環境におけるリアルタイム制御システム管理のためのシステムおよび方法を提供すること。【解決手段】一実施形態では、リアルタイム組込み制御システムの挙動監視および異常検出のためのコンピュータベースのシステムは、プロセッサと、プロセッサによって実行されると、組込み制御システムの挙動訓練例であって、訓練過程中に組込み制御システムへの入力を組込み制御システムからの出力と相関させて、組込み制御システムの挙動フィンガープリントを定義する挙動訓練例を生成し、組込み制御システムの動作中に組込み制御システムへの入力および組込み制御システムからの出力をリアルタイムで監視し、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数が異常を表すときに、警報を生成するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令とを備える。【特許請求の範囲】
【請求項１】
リアルタイム組込み制御システムの挙動監視および異常検出のためのコンピュータベースの方法であって、
前記組込み制御システムの挙動訓練例を生成することであって、前記挙動訓練例が、訓練過程中に前記組込み制御システムへの入力を前記組込み制御システムからの出力と相関させて、前記組込み制御システムの挙動フィンガープリントを定義することと、
前記組込み制御システムの動作中に前記組込み制御システムへの入力および前記組込み制御システムからの出力をリアルタイムで監視することと、
リアルタイム動作時の前記組込み制御システムへの前記入力または前記組込み制御システムから収集された前記出力の１つまたは複数が異常を表すときに、警報を生成することと
を備える方法。
【請求項２】
前記組込み制御システムの挙動訓練例を生成することが、少なくとも１つのパラメータを使用して前記挙動訓練例を調整することを備える、請求項１に記載のコンピュータベースの方法。
【請求項３】
前記少なくとも１つのパラメータが、
リザーバコンピューティングネットワーク内のいくつかのノードを定義するリザーバサイズパラメータ、
前記組込み制御システムへの入力属性に重み付けする入力スケーリングパラメータ、
前記リザーバコンピューティングネットワークのフィードバックの量を定義する出力フィードバックスケーリングパラメータ、
前記リザーバコンピューティングネットワークにおける１つまたは複数のインパルス応答を制御するリザーバ重み行列パラメータ、
前記リザーバコンピューティングネットワークにおけるノイジーな挙動およびタイムワープした挙動に対する感度を制御するリークレートパラメータ、および
前記リザーバコンピューティングネットワークにおける１つまたは複数のノイズインテグレータを制御するノイズスケーリングパラメータ
を含むパラメータのグループから選択される、請求項２に記載のコンピュータベースの方法。
【請求項４】
リアルタイム動作時の前記組込み制御システムから収集された１つまたは複数の出力が異常を表すときに、警報を生成することが、
リアルタイム動作時の前記組込み制御システムへの前記入力または前記組込み制御システムから収集された前記出力の１つまたは複数を、前記訓練過程中に収集された１つまたは複数の出力と比較することと、
リアルタイム動作時の前記組込み制御システムから収集された前記１つまたは複数の出力と前記訓練過程中に収集された前記１つまたは複数の出力との偏差が閾値を超えるとき、リアルタイム動作時の前記組込み制御システムへの前記入力または前記組込み制御システムから収集された前記出力の前記１つまたは複数を異常として特徴付けることと
を備える、請求項１に記載のコンピュータベースの方法。
【請求項５】
前記異常の重大度を判断することをさらに備える、請求項４に記載のコンピュータベースの方法。
【請求項６】
前記警報を前記組込み制御システムに結合された１つまたは複数のアプリケーションに発報することをさらに備える、請求項１に記載のコンピュータベースの方法。
【請求項７】
リアルタイム動作時の前記組込み制御システムへの前記入力または前記組込み制御システムから収集された前記出力の前記１つまたは複数をメモリに記憶することと、
メモリ内のリアルタイム動作時の前記組込み制御システムへの前記入力または前記組込み制御システムから収集された前記出力の前記１つまたは複数を使用して前記挙動訓練例を更新することと
をさらに備える、請求項６に記載のコンピュータベースの方法。
【請求項８】
前記組込み制御システムの挙動訓練例を生成することが、
リザーバコンピューティングネットワーク内のいくつかのノードを定義するリザーバサイズパラメータ、
前記組込み制御システムへの入力属性に重み付けする入力スケーリングパラメータ、
前記リザーバコンピューティングネットワークのフィードバックの量を定義する出力フィードバックスケーリングパラメータ、
前記リザーバコンピューティングネットワークにおける１つまたは複数のインパルス応答を制御するリザーバ重み行列パラメータ、
前記リザーバコンピューティングネットワークにおけるノイジーな挙動およびタイムワープした挙動に対する感度を制御するリークレートパラメータ、および
前記リザーバコンピューティングネットワークにおける１つまたは複数のノイズインテグレータを制御するノイズスケーリングパラメータ
を含むパラメータのグループから選択される少なくとも２つのパラメータを使用して前記挙動訓練例を調整することを備える、請求項１に記載のコンピュータベースの方法。
【請求項９】
リアルタイム組込み制御システムの挙動監視および異常検出のためのコンピュータベースのシステムであって、
プロセッサと、
前記プロセッサによって実行されると、請求項１ないし８のいずれか一項に記載の方法を実行するように前記プロセッサを構成する、前記プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令と
を備えるシステム。
【請求項１０】
プロセッサによって実行されると、請求項１ないし８のいずれか一項に記載の方法を実行するように前記プロセッサを構成する、前記プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令を備えるコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載される主題は、組込み制御システムに関し、より詳細には、リアルタイム組込み制御システムの挙動監視および異常検出を実施するシステムおよび方法に関する。
【背景技術】
【０００２】
組込み制御システムは、製造作業ならびに飛行機およびミッションシステムの動作などの航空宇宙用途の不可欠な部分である。ネットワーク接続された組込みセンサ、コントローラ、およびアクチュエータは性能効率を高め、これは収集される情報が多いことやコンピュータ駆動型制御の結果として得られる。しかし、時間とともに、これらのシステムの特性は、通常の使用、損傷あるいはサイバー攻撃などの様々な理由により、公称状態から著しく外れるまたは劣化する場合がある。さらに、組込みデバイスの国際的なサプライチェーンおよびサイバー攻撃のさらなる高度化に伴い、ゼロデイエクスプロイトの存在および設計上の脆弱性の利用の可能性も増加している。
【０００３】
これらの組込み制御システムの障害または劣化は、とらえにくく、検出するのが困難となり得る。したがって、これは、ネットワーク接続された組込み制御システムの異常な挙動をリアルタイムで検出するシステムおよび方法の必要性を明らかに示している。
【発明の概要】
【０００４】
ネットワーク接続された環境におけるリアルタイム制御システム管理のためのシステムおよび方法が開示される。一実施形態では、リアルタイム組込み制御システムの挙動監視および異常検出のためのコンピュータベースの方法は、組込み制御システムの挙動訓練例を生成することであって、挙動訓練例が、訓練過程中に組込み制御システムへの入力を組込み制御システムからの出力と相関させて、組込み制御システムの挙動フィンガープリントを定義することと、組込み制御システムの動作中に組込み制御システムへの入力および組込み制御システムからの出力をリアルタイムで監視することと、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数が異常を表すときに、警報を生成することとを備える。
【０００５】
別の実施形態では、リアルタイム組込み制御システムの挙動監視および異常検出のためのコンピュータベースのシステムは、プロセッサと、プロセッサによって実行されると、組込み制御システムの挙動訓練例であって、訓練過程中に組込み制御システムへの入力を組込み制御システムからの出力と相関させて、組込み制御システムの挙動フィンガープリントを定義する挙動訓練例を生成し、組込み制御システムの動作中に組込み制御システムへの入力および組込み制御システムからの出力をリアルタイムで監視し、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数が異常を表すときに、警報を生成するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令とを備える。
【０００６】
有利には、コンピュータベースのシステムは、プロセッサによって実行されると、少なくとも１つのパラメータを使用して挙動訓練例を調整するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。好ましくは、少なくとも１つのパラメータは、リザーバコンピューティングネットワーク内のいくつかのノードを定義するリザーバサイズパラメータ、組込み制御システムへの入力属性に重み付けする入力スケーリングパラメータ、リザーバコンピューティングネットワークのフィードバックの量を定義する出力フィードバックスケーリングパラメータ、リザーバコンピューティングネットワークにおける１つまたは複数のインパルス応答を制御するリザーバ重み行列パラメータ、リザーバコンピューティングネットワークにおけるノイジーな挙動およびタイムワープした挙動に対する感度を制御するリークレートパラメータ、およびリザーバコンピューティングネットワークにおける１つまたは複数のノイズインテグレータを制御するノイズスケーリングパラメータを含むパラメータのグループから選択される。
【０００７】
有利には、コンピュータベースのシステムは、プロセッサによって実行されると、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数を、訓練過程中に収集された１つまたは複数の出力と比較し、リアルタイム動作時の組込み制御システムから収集された１つまたは複数の出力と訓練過程中に収集された１つまたは複数の出力との間の偏差が閾値を超えるとき、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数を異常として特徴付けるようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。好ましくは、プロセッサは異常の重大度を判断する。
【０００８】
有利には、コンピュータベースのシステムは、プロセッサによって実行されると、組込み制御システムに結合された１つまたは複数のアプリケーションに警報を発報するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。
【０００９】
有利には、コンピュータベースのシステムは、プロセッサによって実行されると、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数をメモリに記憶し、メモリ内のリアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数を使用して挙動訓練例を更新するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。
【００１０】
別の実施形態では、コンピュータプログラム製品は、プロセッサによって実行されると、組込み制御システムの挙動訓練例であって、訓練過程中に組込み制御システムへの入力を組込み制御システムからの出力と相関させて、組込み制御システムの挙動フィンガープリントを定義する挙動訓練例を生成し、組込み制御システムの動作中に組込み制御システムへの入力および組込み制御システムからの出力をリアルタイムで監視し、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数が異常を表すときに、警報を生成するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令を備える。
【００１１】
有利には、コンピュータプログラム製品は、プロセッサによって実行されると、少なくとも１つのパラメータを使用して挙動訓練例を調整するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。好ましくは、少なくとも１つのパラメータは、リザーバコンピューティングネットワーク内のいくつかのノードを定義するリザーバサイズパラメータ、組込み制御システムへの入力属性に重み付けする入力スケーリングパラメータ、リザーバコンピューティングネットワークのフィードバックの量を定義する出力フィードバックスケーリングパラメータ、リザーバコンピューティングネットワークにおける１つまたは複数のインパルス応答を制御するリザーバ重み行列パラメータ、リザーバコンピューティングネットワークにおけるノイジーな挙動およびタイムワープした挙動に対する感度を制御するリークレートパラメータ、およびリザーバコンピューティングネットワークにおける１つまたは複数のノイズインテグレータを制御するノイズスケーリングパラメータを含むパラメータのグループから選択される。
【００１２】
有利には、コンピュータプログラム製品は、プロセッサによって実行されると、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数を、訓練過程中に収集された１つまたは複数の出力と比較し、リアルタイム動作時の組込み制御システムから収集された１つまたは複数の出力と訓練過程中に収集された１つまたは複数の出力との間の偏差が閾値を超えるとき、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数を異常として特徴付けるようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。好ましくは、プロセッサはさらに、異常の重大度を判断する。
【００１３】
有利には、コンピュータプログラム製品は、プロセッサによって実行されると、リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数をメモリに記憶し、メモリ内のリアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数を使用して挙動訓練例を更新するようにプロセッサを構成する、プロセッサに結合された有形のコンピュータ可読媒体に記憶された論理命令をさらに備える。
【００１４】
適用可能性のさらなる領域が本明細書で与えられる説明から明らかとなろう。説明および特定の例は例示のみを目的とするものであり、本開示の範囲を限定するものではないことを理解されたい。
【００１５】
下記の図面を参照しながら、本開示の教示による方法、システム、およびコンピュータプログラム製品の実施形態について以下に詳細に説明する。
【図面の簡単な説明】
【００１６】
【図１Ａ】実施形態による、リアルタイム組込み制御システムの挙動監視および異常検出を実施するシステムの概略図である。
【図１Ｂ】実施形態による、リアルタイム組込み制御システムの挙動監視および異常検出を実施するシステムの概略図である。
【図２】いくつかの実施形態による、リアルタイム組込み制御システムの挙動監視および異常検出を実施するように適合され得るコンピューティングデバイスの概略図である。
【図３】実施形態による、リアルタイム組込み制御システムの挙動監視および異常検出のための方法における動作を示す流れ図である。
【発明を実施するための形態】
【００１７】
リアルタイム組込み制御システムの挙動監視および異常検出のためのシステムおよび方法が本明細書に記載される。ある一定の実施形態の具体的な詳細は、そのような実施形態を徹底的に理解するために下記の説明および図に記述されている。しかし、当業者であれば、下記の説明に記載された詳細のいくつかがなくても代替実施形態を実施することができることを理解されよう。
【００１８】
ここに記載される様々な実施形態は、組込み制御システムの挙動訓練例を生成する動作を実施することができる１つまたは複数のコンピュータベースのシステムの文脈で記述されている。例えば、いくつかの実施形態では、コンピュータベースのシステムは、訓練過程中に組込み制御システムへの入力を組込み制御システムからの出力と相関させて、正常なまたは安定した状態で動作している組込み制御システムの挙動フィンガープリントを定義する訓練例を策定することができる。挙動フィンガープリントを、組込み制御システムへの入力を組込み制御システムからの出力に関連付ける形で適切なデータストア、例えば、データベースに記憶することができる。
【００１９】
リアルタイム動作時に、コンピュータベースのシステムは、組込み制御システムの動作中に組込み制御システムへの入力および組込み制御システムからの出力を監視することができる。いくつかの実施形態では、システムから収集された出力を、訓練過程中に収集された１つまたは複数の出力と比較することができる。リアルタイム動作時の組込み制御システムへの入力または組込み制御システムから収集された出力の１つまたは複数と訓練過程中に収集された１つまたは複数の出力との間の偏差が閾値を超える場合、リアルタイム動作時の組込み制御システムへの１つまたは複数の入力あるいは組込み制御システムから収集された出力を異常として特徴付けることができる。システムは、リアルタイム動作時の組込み制御システムへの１つまたは複数の入力あるいは組込み制御システムから収集された１つまたは複数の出力が異常を表すときに、警報を生成することができる。
【００２０】
図１Ａ〜図１Ｂは、実施形態による、リアルタイム組込み制御システムの挙動監視および異常検出を実施するシステムの概略図である。最初に図１Ａを参照すると、一実施形態における概要では、システム１００は、システム１００が１つまたは複数の組込み制御システムの挙動訓練例を生成するように構成される訓練モードで構成され得る。いくつかの実施形態では、システム１００は１つまたは複数のネットワーク接続された組込み制御システム１１０から入力を受け取る。ネットワーク組込み制御システム１１０は、製造フロアの機器内の１つまたは複数の組込みコントローラを含むことができる。例として、ネットワーク組込み制御システム１１０は、製造過程を監視または自動化する１つまたは複数の組込みコントローラを含むことができる。ネットワーク組込み制御システムから出力されるデータは、１つまたは複数のプロセスパラメータ、機器測定値、環境条件読取り値などを含むことができる。
【００２１】
システム１００は、１つまたは複数の挙動属性入力アプリケーション１２０、挙動入力／分類子相関器アプリケーション１２５、挙動入力／分類データストア１３０、リザーバコンピューティングパラメータデータストア１４０、および挙動訓練例データストア１４５を備える。いくつかの実施形態では、アプリケーション１２０、１２５、１３５は、プロセッサによって実行されると、安定したかつ／または所与の動作状態でのネットワーク組込み制御システム１１０への入力およびネットワーク組込み制御システム１１０からの出力を相関させる挙動訓練例を生成する動作を実施するようにプロセッサを構成する、非一時的コンピュータ可読媒体に記憶された論理命令として実施され得る。
【００２２】
次に図１Ｂを参照すると、いくつかの実施形態では、システム１００は、組込み制御システム１００の動作中に組込み制御システムへの入力および組込み制御システムからの出力をリアルタイムで監視するように構成され得る。ネットワーク組込み制御システム１１０に入力されるデータは、１つまたは複数の制御システムからの制御パラメータおよびネットワーク組込み制御システム１１０に関連付けられた１つまたは複数の監視システムからのフィードバックを含むことができる。ネットワーク組込み制御システムから出力されるデータは、１つまたは複数のプロセスパラメータ、機器測定値、環境条件読取り値などを含むことができる。
【００２３】
図１Ｂに示すように構成された監視では、システム１００は、１つまたは複数の挙動属性入力アプリケーション１２０、挙動入力／分類子相関器アプリケーション１２５、挙動入力／分類データストア１３０、リザーバコンピューティングパラメータデータストア１４０、挙動訓練例データストア１４５、挙動モデルアプリケーション１６５、異常挙動分類子アプリケーション１７０、および挙動警報発報アプリケーション１７５を備える。いくつかの実施形態では、アプリケーション１２０、１２５、１３５、１６５、１７０、１７５は、プロセッサによって実行されると、安定したかつ／または所与の動作状態でのネットワーク組込み制御システム１１０への入力およびネットワーク組込み制御システム１１０からの出力を相関させる挙動訓練例を生成する動作を実施するようにプロセッサを構成する、非一時的コンピュータ可読媒体に記憶された論理命令として実施され得る。
【００２４】
いくつかの実施形態では、図１に示すシステム１００の様々なコンポーネントは、コンピュータシステム環境で実施され得る。図２は、いくつかの実施形態による、システム１００の部分を実施するように適合され得るコンピューティングシステム２００の概略図である。一実施形態では、システム２００は、コンピューティングデバイス２０８と、スクリーン２０４を有するディスプレイ２０２、１つまたは複数のスピーカ２０６、キーボード２１０、１つまたは複数の他のＩ／Ｏデバイス２１２、およびマウス２１４を含む、１つまたは複数の付随する入力／出力デバイスとを含む。他のＩ／Ｏデバイス２１２は、タッチスクリーン、音声作動式入力デバイス、トラックボール、およびシステム２００がユーザからの入力を受け取ることを可能にする任意の他のデバイスを含むことができる。
【００２５】
コンピューティングデバイス２０８は、システムハードウェア２２０と、ランダムアクセスメモリおよび／または読取り専用メモリとして実装され得るメモリ２３０とを含む。ファイルストア２８０は、コンピューティングデバイス２０８に通信可能に結合され得る。ファイルストア２８０は、例えば、１つまたは複数のハードドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＯＭドライブ、あるいは他のタイプのストレージデバイスなど、コンピューティングデバイス２０８の内部にあってもよい。また、ファイルストア２８０は、例えば、１つまたは複数の外部ハードドライブ、ネットワークアタッチトストレージ、あるいは別個のストレージネットワークなど、コンピュータ２０８の外部にあってもよい。
【００２６】
システムハードウェア２２０は、１つまたは複数のプロセッサ２２２、１つまたは複数のグラフィックスプロセッサ２２４、ネットワークインターフェース２２６、およびバス構造２２８を含むことができる。本明細書で使用される場合、「プロセッサ」という用語は、限定されないが、マイクロプロセッサ、マイクロコントローラ、複合命令セットコンピューティング（ＣＩＳＣ）マイクロプロセッサ、縮小命令セット（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、または任意の他のタイプのプロセッサもしくは処理回路などの任意のタイプの計算要素を意味する。
【００２７】
グラフィックスプロセッサ２２４は、グラフィックスおよび／またはビデオ動作を管理する付属のプロセッサとして機能し得る。グラフィックスプロセッサ２２４は、コンピューティングシステム２００のマザーボードに一体化され得るまたはマザーボード上の拡張スロットを介して結合され得る。
【００２８】
一実施形態では、ネットワークインターフェース２２６は、イーサネットインターフェース（例えば、電気電子技術者協会（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）／ＩＥＥＥ  ８０２．３−２００２を参照）などの有線インターフェースまたはＩＥＥＥ  ８０２．１１ａ、ｂもしくはｇ準拠インターフェース（例えば、ＩＥＥＥ  Ｓｔａｎｄａｒｄ  ｆｏｒ  ＩＴ−Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  ａｎｄ  ｉｎｆｏｒｍａｔｉｏｎ  ｅｘｃｈａｎｇｅ  ｂｅｔｗｅｅｎ  ｓｙｓｔｅｍｓ  ＬＡＮ／ＭＡＮ−−Ｐａｒｔ  ＩＩ：  Ｗｉｒｅｌｅｓｓ  ＬＡＮ  ｍｅｄｉｕｍ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  （ＭＡＣ）  ａｎｄ  Ｐｈｙｓｉｃａｌ  Ｌａｙｅｒ  （ＰＨＹ）  ｓｐｅｃｉｆｉｃａｔｉｏｎｓ  Ａｍｅｎｄｍｅｎｔ  ４：  Ｆｕｒｔｈｅｒ  Ｈｉｇｈｅｒ  Ｄａｔａ  Ｒａｔｅ  Ｅｘｔｅｎｓｉｏｎ  ｉｎ  ｔｈｅ  ２．４  ＧＨｚ  Ｂａｎｄ，  ８０２．１１Ｇ−２００３を参照）などの無線インターフェースとすることができる。ワイヤレスインターフェースの別の例は、汎用パケット無線サービス（ＧＰＲＳ）インターフェース（例えば、Ｇｕｉｄｅｌｉｎｅｓ  ｏｎ  ＧＰＲＳ  Ｈａｎｄｓｅｔ  Ｒｅｑｕｉｒｅｍｅｎｔｓ、Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ／ＧＳＭ  Ａｓｓｏｃｉａｔｉｏｎ、Ｖｅｒ．  ３．０．１、２００２年１２月を参照）であろう。
【００２９】
バス構造２２８は、システムハードウェア２２０の様々なコンポーネントを接続する。一実施形態では、バス構造２２８は、メモリバス、周辺バスもしくは外部バス、および／または、限定されないが、１１ビットバス、業界標準アーキテクチャ（ＩＳＡ）、マイクロチャネルアーキテクチャ（ＭＳＡ）、拡張ＩＳＡ（ＥＩＳＡ）、インテリジェントドライブエレクトロニクス（ＩＤＥ）、ＶＥＳＡローカルバス（ＶＬＢ）、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）、ユニバーサルシリアルバス（ＵＳＢ）、アドバンストグラフィックスポート（ＡＧＰ）、パーソナルコンピュータメモリカード国際協会バス（ＰＣＭＣＩＡ）、およびスモールコンピュータシステムインターフェース（ＳＣＳＩ）を含む入手可能な任意の様々なバスアーキテクチャを使用するローカルバスを含む、いくつかのタイプのバス構造の１つまたは複数であってもよい。
【００３０】
メモリ２３０はコンピューティングデバイス２０８の動作を管理するためのオペレーティングシステム２４０を含むことができる。一実施形態では、オペレーティングシステム２４０は、システムハードウェア２２０へのインターフェースを提供するハードウェアインターフェースモジュール２５４を含む。加えて、オペレーティングシステム２４０は、コンピューティングデバイス２０８の動作において使用されるファイルを管理するファイルシステム２５０およびコンピューティングデバイス２０８上で実行するプロセスを管理するプロセス制御サブシステム２５２を含むことができる。
【００３１】
オペレーティングシステム２４０は、システムハードウェア２２０とともに動作して、リモートソースとデータパケットおよび／またはデータストリームを送受信することができる１つまたは複数の通信インターフェースを含み（または管理し）得る。オペレーティングシステム２４０は、オペレーティングシステム２４０とメモリ２３０に常駐する１つまたは複数のアプリケーションモジュールとの間のインターフェースを提供するシステムコールインターフェースモジュール２４２をさらに含むことができる。オペレーティングシステム２４０は、Ｗｉｎｄｏｗｓ（登録商標）ブランドのオペレーティングシステムとして、あるいはＵＮＩＸオペレーティングシステムもしくはその任意の派生物（例えば、Ｌｉｎｕｘ、Ｓｏｌａｒｉｓなど）、または他のオペレーティングシステムシステムとして具体化され得る。
【００３２】
上記に記載したように、いくつかの実施形態では、実施され得るシステム１００の様々なアプリケーションは、メモリ２３０などの有形のコンピュータ可読媒体で符号化された論理命令を含み、この論理命令は、プロセッサ２２２によって実行されると、プロセッサ２２２に動作を実施させる。したがって、いくつかの実施形態では、メモリ２３０は、１つまたは複数の挙動属性入力アプリケーション１２０、挙動入力／分類子相関器アプリケーション１２５、挙動入力／分類データストア１３０、リザーバコンピューティングパラメータデータストア１４０、挙動訓練例データストア１４５、挙動モデルアプリケーション１６５、異常挙動分類子アプリケーション１７０、および挙動警報発報アプリケーション１７５を含むことができる。
【００３３】
システム１００の構造的なコンポーネントを説明してきたが、実施形態によるリアルタイム組込み制御システムの挙動監視および異常検出のための方法における動作を示す流れ図である図３を参照しながら、システム１００の動作について説明する。
【００３４】
図３を参照すると、動作３１０で、挙動訓練例が生成される。図１Ａを参照すると、動作の訓練モードにおいて、挙動属性入力アプリケーション１２０は、システム１１０が安定した状態でおよび／または既知の条件下で動作しているとき、ネットワーク組込み制御システム１１０へのデータ入力およびネットワーク組込み制御システム１１０からのデータ出力を受け取る。例として、いくつかの実施形態では、ネットワーク組込み制御システム１１０に対する入力の訓練シーケンスは、挙動訓練例データストア１４５に記憶され得る。挙動属性入力アプリケーション１２０は、入力の訓練例を１つまたは複数のネットワーク組込み制御システム１１０に提供することができ、入力に応答して１つまたは複数のネットワーク組込み制御システム１１０によって生成されたデータ出力を受け取ることができる。挙動属性入力アプリケーション１２０は、受け取った出力を挙動入力／分類子相関器アプリケーション１２５に渡すことができる。
【００３５】
挙動入力／分類子相関器アプリケーション１２５は、１つまたは複数のネットワーク組込み制御システム１１０によって生成された出力を受け取り、１つまたは複数のネットワーク組込み制御システム１１０によって生成された出力を１つまたは複数のネットワーク組込み制御システム１１０に提供された入力に関連付け、出力および関連付けを挙動入力／分類データストア１３０に記憶する。さらに、挙動入力／分類子相関器アプリケーション１２５は、１つまたは複数のネットワーク組込み制御システム１１０についての、外部ソースによって提供され得る正常な挙動分類入力１１５を受け取り、正常な挙動分類入力１１５を使用して、１つまたは複数のネットワーク組込み制御システム１１０からの出力を分類する。
【００３６】
挙動訓練用アプリケーション１３５により、システムのユーザは、挙動訓練例データストア１４５内の訓練例およびリザーバコンピューティングパラメータデータベースの関連するパラメータにアクセスすることができる。加えて、挙動訓練用アプリケーション１３５は、１つまたは複数のリザーバコンピューティングパラメータを訓練例に適用して、あるレベルの感度を実現するように訓練例を調整することができる。いくつかの実施形態では、以下の６つのパラメータを調整に利用することができる。
【００３７】
リザーバサイズ：統計的学習理論に基づいて、リザーバコンピューティングネットワーク内のいくつかのノードを定義するパラメータであり、これはモデリング能力に影響を及ぼす。
【００３８】
入力スケーリング：入力属性に重み付けし、リザーバダイナミクスに直接影響を与え、これは小さい入力振幅を大きい入力振幅と同じくらいの重要度で処理するリザーバダイナミクスを正規化するのに役立ち、リザーバの非線形性の程度を決定するパラメータ。
【００３９】
出力フィードバックスケーリング：安定性制御についてのリザーバコンピューティングネットワークのフィードバックの量を定義し、振動する挙動パターンの程度を認識するのを支援し、訓練されたネットワーク組込みシステムコントローラ１２０のパターン生成コンポーネントがどの程度独立しているかを判断するパラメータ。
【００４０】
リザーバ重み行列スペクトル半径：リザーバコンピューティングネットワークのインパルス応答および相互作用の入力値範囲を制御し、挙動感度の決定を支援し、過去の入力が将来の出力に影響を及ぼすのを可能にするのに当該のタスクが長期メモリまたは短期メモリを必要とするかどうかに依存するパラメータ。
【００４１】
リークレート：ノイジーな挙動、タイムワープした挙動パターン、および／または非常に遅い動的システムに対するリザーバコンピューティングネットワークの感度を制御するパラメータ。
【００４２】
ノイズスケーリング：リザーバコンピューティングネットワークのノイズインテグレータの重要度を制御し、挙動パターンの安定した／無秩序な側面の分類感度に影響を及ぼすパラメータ。
【００４３】
したがって、図１Ａに示す学習／訓練構成では、システム１００は、安定している状態および／または正常な動作状態での１つまたは複数のネットワーク組込み制御システム１１０についての入力および関連する出力のプロファイルを構築し、分類スキームに従って出力を分類することができる。結果は挙動訓練例データストア１４５に記憶される。
【００４４】
図３に戻って参照すると、残りの動作は、システム１００が図１Ｂに示すような監視構成であるとき、システム１００によって実施される。動作３１５では、システム１００は、ネットワーク組込み制御システム１１０のリアルタイム動作中に１つまたは複数のネットワーク組込み制御システム１１０への入力および１つまたは複数のネットワーク組込み制御システム１１０からの出力を監視する。例として、図１Ｂに示すように、いくつかの実施形態では、挙動属性入力アプリケーション１２０は１つまたは複数のネットワーク組込み制御システム１１０を監視して、制御システム１１０への入力および制御システム１１０によって生成された出力を取り出す。他の実施形態では、挙動属性入力アプリケーション１２０は１つまたは複数のネットワーク組込み制御システム１１０からの入力および出力を積極的に要求する。
【００４５】
挙動属性入力アプリケーション１２０によって収集されたデータは、挙動モデルアプリケーション１６５に転送される。いくつかの実施形態では、挙動モデルアプリケーション１６５は、訓練済みの配備されたリザーバコンピューティングネットワークとして実施され得る。挙動モデルアプリケーション１６５は、挙動訓練用アプリケーション１３５によって訓練される。したがって、挙動モデルアプリケーション１６５は、そのリザーバコンピューティングパラメータおよびリザーバコンピューティングネットワーク行列を構成することになる。挙動モデルアプリケーション１６５は挙動属性入力を監視し、構成および学習した訓練例に基づいて分類を出力する。
【００４６】
挙動モデルアプリケーション１６５によって生成された出力は異常挙動分類子アプリケーション１７０に転送され、異常挙動分類子アプリケーション１７０は挙動モデルアプリケーション１６５の結果を解釈し、結果が異常かどうかを判断する。例として、いくつかの実施形態では、リアルタイム動作時のネットワーク組込み制御システム１１０から収集された１つまたは複数の出力は、訓練過程中に収集された１つまたは複数の出力と比較され（動作３２０）、リアルタイム動作時の組込み制御システムから収集された１つまたは複数の出力と訓練過程中に収集された１つまたは複数の出力との間の偏差が閾値を超えるとき、異常として特徴付けられる（動作３２５、３３０）。閾値は固定値、出力の大きさに比例する値であってもよく、または動的であってもよい。いくつかの実施形態では、異常挙動分類アプリケーション１７０は異常の重大度を判断することもできる（動作３３５）。
【００４７】
異常挙動分類アプリケーション１７０によって生成された出力は、警報を生成し、１つまたは複数の外部アプリケーション１８０に発報する（動作３４０）ことができるように、挙動警報発報アプリケーション１７５に転送される。また、処理のために、結果を挙動入力／分類子相関器アプリケーション１２５に転送することができる。いくつかの実施形態では、挙動入力／分類子相関器アプリケーション１２５は、リアルタイム動作時の組込み制御システムから収集された１つまたは複数の出力をメモリに記憶し（動作３４５）、メモリ内のリアルタイム動作時の組込み制御システムから収集された１つまたは複数の出力を使用して、例えば、挙動入力／分類データストア１３０を更新することによって、挙動訓練例を更新する（動作３５０）。
【００４８】
図１Ａおよび図１Ｂに示す実施形態は単一の挙動モデルアプリケーション１６５および単一の異常挙動分類アプリケーション１７０を示しているが、当業者であれば、システム１００は、層構造の挙動異常検出システムを適用するために複数の挙動モデルアプリケーション１６５および挙動分類アプリケーション１７０を含むことができることを理解されよう。
【００４９】
上記の記述では、例示的なプロセスの特定の実装形態を説明してきたが、代替実装形態では、ある一定の行為を上記に記載した順序で実行する必要がないことを理解されたい。代替実施形態では、いくつかの行為を修正し、異なる順序で実行することができ、または状況に応じて完全に省略することができる。さらに、様々な代替実装形態では、記載された行為をコンピュータ、コントローラ、プロセッサ、プログラマブルデバイス、ファームウェア、または任意の他の適切なデバイスによって実施することができ、１つまたは複数のコンピュータ可読媒体に記憶されたまたは他の方法でそのようなデバイスに記憶またはプログラムされた（例えば、そのようなデバイスにコンピュータ可読命令をリアルタイムで送信することを含む）命令に基づくことができる。ソフトウェアの文脈では、上記に記載した行為は、１つまたは複数のプロセッサによって実行されると、記載された動作を実行するコンピュータ命令を表し得る。コンピュータ可読媒体が使用される場合、コンピュータ可読媒体は、記憶された命令を実施するためにデバイスによってアクセスすることができる任意の利用可能な媒体とすることができる。
【００５０】
様々な実施形態を説明してきたが、当業者であれば、本開示から逸脱することなく行われ得る修正形態または変形形態を理解されよう。例は様々な実施形態を示しており、本開示を限定するものではない。したがって、本明細書および特許請求の範囲は、関連する従来技術に鑑みて必要になるそのような限定のみをもって、自由に解釈されるべきである。
【符号の説明】
【００５１】
１００  システム
１１０  ネットワーク組込み制御システム
１１５  正常な挙動分類入力
１２０  挙動属性入力アプリケーション
１２５  挙動入力／分類子相関器アプリケーション
１３０  挙動入力／分類データストア
１３５  挙動訓練用アプリケーション
１４０  リザーバコンピューティングパラメータデータストア
１４５  挙動訓練例データストア
１６５  挙動モデルアプリケーション
１７０  異常挙動分類子アプリケーション
１７５  挙動警報発報アプリケーション
１８０  外部アプリケーション
２００  コンピューティングシステム
２０２  ディスプレイ
２０４  スクリーン
２０６  スピーカ
２０８  コンピューティングデバイス
２１０  キーボード
２１２  他のＩ／Ｏデバイス
２１４  マウス
２２０  システムハードウェア
２２２  プロセッサ
２２４  グラフィックスプロセッサ
２２６  ネットワークインターフェース
２２８  バス構造
２３０  メモリ
２４０  オペレーティングシステム
２４２  システムコールインターフェースモジュール
２４４  通信インターフェース
２５０  ファイルシステム
２５２  プロセス制御サブシステム
２５４  ハードウェアインターフェースモジュール
２８０  ファイルストア
３１０  動作
３１５  動作
３２０  動作
３２５  動作
３３０  動作
３３５  動作
３４０  動作
３４５  動作
３５０  動作
【図１Ａ】
2014096145.tif 000002
【図１Ｂ】
2014096145.tif 000003
【図２】
2014096145.tif 000004
【図３】
2014096145.tif 000005
【外国語明細書】
2014096145000001.pdf
2014096145000002.pdf
2014096145000003.pdf
2014096145000004.pdf