JP2020166829A - 互換性のあるコンポーネントの非同期選択のシステムおよび方法 - Google Patents

互換性のあるコンポーネントの非同期選択のシステムおよび方法 Download PDF

Info

Publication number
JP2020166829A
JP2020166829A JP2020014076A JP2020014076A JP2020166829A JP 2020166829 A JP2020166829 A JP 2020166829A JP 2020014076 A JP2020014076 A JP 2020014076A JP 2020014076 A JP2020014076 A JP 2020014076A JP 2020166829 A JP2020166829 A JP 2020166829A
Authority
JP
Japan
Prior art keywords
anomalies
state
parameters
components
model
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.)
Granted
Application number
JP2020014076A
Other languages
English (en)
Other versions
JP7369630B2 (ja
Inventor
エー. エフレモフ アンドレイ
A Efremov Andrey
エー. エフレモフ アンドレイ
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.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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 Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of JP2020166829A publication Critical patent/JP2020166829A/ja
Application granted granted Critical
Publication of JP7369630B2 publication Critical patent/JP7369630B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Hardware Design (AREA)
  • Human Resources & Organizations (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)

Abstract

【課題】互換性のあるコンポーネントの非同期選択のシステムおよび方法を提供する。【解決手段】被観測システム用の互換性のあるコンポーネントを選択するためのシステムによる方法は、システムの1つ以上のコンポーネントのパラメータを収集する工程と、システムの1つ以上のコンポーネントがシステムに必要な状態と合致しているかを評価する工程と、合致に関する評価に基づいて1つ以上の異常を識別する工程と、1つ以上の異常に対応するシステムのクラスおよびパラメータを識別するために1つ以上の異常を分析する工程と、システムのための1つ以上の復元方法モデルを決定する工程と、1つ以上の復元方法モデルに対する要件を満たす1つ以上のコンポーネントを選択する工程と、1つ以上の異常を除去するために、システムと互換性がある1つ以上のコンポーネントをシステムにおいて実装する工程と、を含む。【選択図】図3A

Description

本開示は、コンピュータシステムにおける誤動作の検出に関し、より具体的には、互換性のあるコンポーネントの非同期選択の方法およびシステムに関する。
企業および起業家は、製品の販売促進のために、広告サービスを利用することがよくある。広告は、様々なメディアチャネルを介して、潜在的な顧客に商品、サービスまたはアイデアを購入させようとする。インターネットの発展により、広告主は、いまや、未開拓の市場に広範囲にわたってアクセスすることができ、広告の20%以上がインターネット上で行われていると推測されるほどである。
しかし、広告は、個別化および視聴者の選択が欠如すると、本来よりも有効ではなくなる。したがって、プロデューサは、ユーザ全体から個別のグループを選び出そうと努力し、各グループをターゲットとする広告を提示する。これは、標的広告または広告アナウンス(プレゼンテーション)として知られており、ウェブページのコンテンツではなく、ユーザの過去の挙動または調査データに基づいて識別された特定のユーザグループに関連する。
インターネットの発展の課程において、ユーザに対して宣伝広告を行う方法自体が変化し始めた。ユーザは、ネットサーフィンの最中のみならず、ウェブを利用するアプリケーションソフトウェアにおいて、また、出勤または帰宅途中に掲示板上で、広告に遭遇している。
しかし、広告には、主な欠点が1つある。すなわち、広告は、宣伝広告されている製品を必要としていないユーザをいらいらさせることがよくある。その結果、そのようなユーザは、広告を伴うアプリケーションソフトウェアおよびウェブリソースを回避しようとする。ユーザが実際にその製品を必要としているにもかかわらず、広告が過度に押し付けがましい場合、その消費者は競争相手の方に向いてしまうことになるかもしれない。
したがって、既存の広告製品は、効率が低く、また、ユーザに関する情報を収集、送信し、ユーザのプロファイルを描くのだが、これには法的リスクを伴う可能性がある。アプリケーションソフトウェアが広告を介してマネタイズされているため、広告がユーザをいらいらさせることがよくあり、その結果、ユーザは、広告を伴うアプリケーションソフトウェアを回避する。提案する開示は、上記の欠点がない態様について説明する。
本発明は、互換性のある製品を非同期選択するように設計されている。
本発明の技術的な成果は、システム復元手段を選択する方法を実行した結果、手段のデータベースからシステム復元手段を選択することが可能になることであり、状態およびプロセス(少なくとも2つの状態または2つのプロセス)を説明するシステムパラメータを、システムの機能を実現する素子から取得し、このようにして取得したパラメータを用いてシステムの状態モデルを照会することによって、システムの状態およびプロセスを異常なものと正常なものとに分割する。パラメータをリアルタイムで取得することができ、一方、システムの素子の1つ(基本素子)にインストールされたクライアントが、そのパラメータ自体を取得する。システムの素子は、ソフトウェア、ハードウェア、ハードウェア/ソフトウェア、および有機体であってもよい。特定の例において、基本素子は、システムの文脈においてIoTデバイスと相互作用するパーソナルコンピュータデバイスであってもよい。特定の例において、得られるパラメータを有するシステムは、ダイナミックであり、無線ネットワークによって一体化した素子からなる。基本素子に接続される素子の数は、その時点と基本素子の位置によって、また、現在の無線ネットワークにアクセスできる無線局の有効範囲ゾーンの半径に依存して、決定される。状態モデルを照会することによって、システムおよびその素子における状態およびプロセスに対する要件との合致を評価する。
前記モデルは、下記の状態およびプロセスを検出するための1組のルールを構成してもよい。
・素子の異常な状態。素子のパラメータの関数である。
・システムの異常な状態。システムの素子の異常な状態を判定するパラメータの関数である。
・素子の異常なプロセス。素子の状態の時間関数である。
・システムの異常なプロセス。システムの状態の時間関数である。
別の例において、システムの状態モデルは、信頼度のモデルとユースケースの集合体である。モデルの照会の結果、状態およびプロセスを、異常な状態/プロセス(一般的な場合、異常)と正常な状態/プロセスに分割し、さらに、分割中に、異常の関数を有するシステムパラメータを識別してもよく、この場合、異常は、少なくとも、以下の状態およびプロセスであってもよい。
・必要な状態から逸脱している素子の状態。素子のパラメータの関数である。
・必要な状態から逸脱しているシステムの状態。素子の状態の関数である。
・必要なプロセスから逸脱している素子のプロセス。素子の状態の時間関数である。
・必要なプロセスから逸脱しているシステムのプロセス。システムの状態の時間関数である。
・システムが相互作用している環境の状態であり、必要な状態から逸脱しており、システムのパラメータによって説明可能な状態。
・システムが相互作用している環境のプロセスであり、必要なプロセスから逸脱しており、システムのパラメータによって説明可能なプロセス。
さらに、たとえば、異常を定義するパラメータを有するシステムのクラスまたは素子によって、異常をさらに説明してもよい。検出される異常は、機能異常に関するものであってもよく、この場合、機能異常は、所定の機能を実行するシステムまたはシステムの素子の能力の低下または損失である。
分割(クラスタ化)後、少なくとも1つのルールを、システムの異常な状態/プロセスおよび正常な状態/プロセスのパラメータに基づいて、システム復元手段を選択するために、公式化し、また、システム復元手段を、少なくとも1つの公式化したルールに基づいて、手段のデータベースから選択する。システム復元のために選択された手段を実施すると、システムおよび素子が要件に合致することが確実となり、一方、システム自体の復元により、システムが設計要件に合致することが確実となる。たとえば、異常発生時、選択された手段によって、システムに必要な機能が確実に復元される。特定の例において、選択された手段は、異常な状態またはプロセスを安定させることによって復元を行い、逸脱を安定させるための手段の識別を、状態またはプロセスを分割することで、非同期モードで実施する。
特定のケースでは、実施のための選択された手段は、素子またはシステムを、異常な状態またはプロセスから必要な状態またはプロセスに移行させて(異常の消去)復元を行う。この場合、特定の例において、必要な状態またはプロセスは、フープスプラス(FURPS+)分類に準拠した、システムに関する要件に対応する。プロセスおよび状態の分割、ルールの公式化、および手段の選択に関する方法を実施するステップを、サーバ側で実行してもよい。
態様例の上記簡略概要は、本開示の基本的な理解を提供する役割を果たす。この概要は、全ての企図された態様の広範な概観ではなく、全ての態様の主要または重大要素を特定することを意図するものではなく、本開示の任意または全ての態様の範囲を叙述することを意図するものでもない。その唯一の目的は、以下の本開示のより詳細な説明の前置きとして、1つ以上の態様を簡略化した形で提示することである。前述の目的を達成するために、本開示の1つ以上の態様は、特許請求の範囲に記載され、例示的に指摘される側面を含む。
図1は、本開示の例示的な態様による、観測可能なダイナミックシステムの変形例を示す。 図2Aは、本開示の例示的な態様による、ユーザと予防相互作用するシステムを示す。 図2Bは、本開示の例示的な態様による、ユーザと予防相互作用するシステムと観測可能なダイナミックシステムとの関係を示す。 図3Aは、本開示の例示的な態様による、異常を有するシステムの互換性のある手段を識別する方法を示す。 図3Bは、本開示の例示的な態様による、互換性のある手段を検出する方法を示す。 図4は、本開示の例示的な実施形態を示す。 図5は、本開示の例示的な態様による、要件に対応するユーザを探索する方法を示す。 図6は、本開示の例示的な態様による、ユーザを探索するためのモデルを構築する方法を示す。 図7は、本開示の例示的な態様による、互換性のある手段の非同期選択の方法を示す。 図8は、汎用コンピュータシステムの例を示す。
例示的な態様を、互換性のあるコンポーネントの非同期選択のための、システム、方法、およびコンピュータプログラム製品に関連して、本明細書において説明する。当業者であれば、以下の説明は例示的なものにすぎず、決して限定することを意図するものではないことを理解するであろう。他の態様は、本開示の恩恵を受ける当業者に容易に連想されるであろう。添付の図面に例示されている態様例の実施を詳細に言及する。図面および以下の説明の全体にわたって、同一または同様のものについては、可能な限り、同一の参照符号を用いるものとする。
本開示は、広告の本質、すなわち、広告のランダムな性質を放棄し、広告メッセージを、問題およびその問題の解決に最も有効な方法に関するユーザへの通知に置き換える。本発明により、不確定性や蓋然性を回避することが可能となり、したがって、本提案が広告であると見なされることはなく、本提案はユーザ通知の予防システムである。とりわけ、前記システムでは、情報提供は実際に情報を必要とする人々のために実行されるので、情報提供に費やすリソースが低減する。広告製品は、ユーザの好みや考えられるニーズを判断し、ユーザが興味があり、必要としているかもしれない、製品またはサービスに関する情報をユーザへ送る。本発明は、ユーザ環境をモニタリングし、実際の問題(または、近いうちに起こりそうな問題)および実際のニーズを見つけ出し、上記に関する情報を提供し、かつ、実施しうる可能な解決策を提案する。前記解決策には、ある製品またはサービスの獲得による解決策も含まれる。
平均的なユーザは、デバイスの多くの技術的問題を予測することができず、また、ユーザは、発生中の、または過去に発生した問題を解決するために製品特性を評価するための十分な技術知識も持ってはいないが、メーカーは、この情報を持っている。しかし、メーカーは、製品を必要としているユーザを知らず、したがって、確率的な方法および統計的方法によって、マーケットリサーチを実行し、需要モデルを構築せざるをえない。本開示によれば、デバイスの問題およびデバイス環境(モノのインターネット(the Internet of Things)、略してIoT、を含む)における問題を検出することができ、かつ、上記問題の有効な予防策を見つけることができる。このシステムは、付加的手段をインストールすることを必要としないが、作業中のクライアントによって、たとえば、アンチウイルスソフトウェアによって実現される。
本解決策を使用して少なくとも下記のことを宣伝してもよい。
・電子技術
・ITプロバイダ
・ITサービス
・医療品
・医療サービスプロバイダ
・健康関連製品およびサービスの販売促進
・労働市場関連製品およびサービス
・修理および建設資材、ならびに修理および建設サービス
・クリーニングサービス
・食品
たとえば、労働市場の環境において本解決策を使用してもよい。人員採用活動中の人事部(Human Resources:HR)の最大経費の1つは、履歴書の探索と履歴書が要件に合致しているかどうかの評価である。履歴書記入に関する基準が欠けている場合、これらの作業に多くの時間がかかる。場合によっては、志願者は、完全には履歴書に記入しておらず、かつ/または、重要な詳細を省略することがあり、その結果、該当する専門家が見過ごされてしまうか、または、スキップされた項目を明確にするために、リクルータ側に追加の労働経費が必要となる。提案する本発明によれば、履歴書に示されなくとも、ある要件を評価することが可能となる。その技術は、志願者のデバイスから収集したデータに基づき、過去に訓練したモデルを用いて、専門家のカテゴリ化を行う。
以下の定義および概念を、本開示の様々な態様を説明する際に使用する。
「システム」は、相互に関係があり、相互に接続している素子の集合であり、ある一定の統一体または単一体を形成する。1組の素子は、システムの素子がサブシステムとして知られる別のシステムであってもよい設計に従って、相互作用する。前記システムは、制御システムまたは制御対象システムであってもよく、ハードウェアコンポーネント(たとえば、デバイス)、ソフトウェアコンポーネント(たとえば、プログラム)、および、人間との相互作用(したがって、人間がシステムの素子であってもよい)、または別の生物との相互作用を含んでもよい。素子は、共有する機能タスクを実行するように一体化している。要件は、設計によって、たとえばFURPS+分類に準拠して、システムに課せられる。
・F−機能性または機能要件。特性、能力、セキュリティ。これらは主要な要件であり、ユースケース図を構築するために使用される。
・U−ユーザビリティ要件、すなわち使いやすさ(ユーザ体験)に関する要件。人的要因、美的感覚、一貫性、ドキュメンテーション。
・R−信頼性要件、または信頼度に関する要件。起こりうるクラッシュの頻度、故障耐性、復旧のしやすさ、安定性の予測可能性。
・P−性能要件、または生産性に関する要件。応答時間、リソース使用、効率、パワー、スケーラビリティ。
・S−保守性要件、または保守に関する要件。保守可能性、修理可能性、柔軟性、変更可能性、モジュール性、拡張性、ローカライズ可能性。
設計に従って実現されたシステムは、システムが機能している間、設計要件を満たす。特定の例における要件は、システム/素子が所与の時点で提供する性能である(たとえば、フレーム毎秒、または少なくとも10人のユーザからの毎秒100個の要求に関する要件である)。
「システムの素子の状態」は、ある時点でのシステムの素子の属性一式を意味し、素子のパラメータの関数である。
「システムの状態」は、ある時点でのシステムの属性一式を意味し、システムのパラメータの関数である。「システムの状態」は、ある時点におけるシステムの素子の状態の集合体としても定義される。
「プロセス」は、ある時間間隔におけるシステムの素子またはシステム全体の属性における変化を意味し、状態の時間関数である。
(素子、システム、またはプロセスの)「パラメータ」は、プロセス、現象、素子(デバイス、ソフトウェア、生物を含む)、またはシステムの、任意の属性を特徴づける量を意味する。いずれのシステムも、下記2つのクラスに分割することができる、量の集合体によって、定量的に説明される。
・パラメータ(P)。システムの第1次属性について説明し、システム調査のための初期データである。
・特性(C)。システムの第2次属性について説明し、システムのパラメータの関数として決定される。C=f(P)
システムのパラメータは、下記のパラメータに、さらに分割される。
・内部パラメータ。システムの構造組織および機能組織を説明する。
・外部パラメータ。(システムに関連する)環境とシステムの相互作用を説明する。
内部パラメータは、(限定はされないが)下記のパラメータを含む。
・構造パラメータ。システムの素子の構成、およびその実際の構造を説明する。
・機能パラメータ。システムの機能組織(機能のプロセス)を説明する。
外部パラメータは、たとえば、(限定はされないが)作業負荷パラメータを含み、作業負荷パラメータは、システムのリソースの使用頻度および使用量を示す。一般的な場合、外部パラメータは、環境とシステムの相互作用のパラメータである。
システムの特性は、下記の特性に分割される。
・グローバル特性。システム全体としての機能の有効性を示す。
・ローカル特性。システムの個々の素子の機能の質を説明する。
システムのグローバル特性は、(限定はされないが)下記の特性を含む。
・パワー特性または生産性特性。システムの所定目的を達成する速度を示す。
・時間特性。システムの機能の時間態様を説明する。
・信頼性特性。システムの機能の信頼性を定義する。
・コスト指標形式の経済特性。システムの使用の経済的実現可能性を示す。
パラメータと特性の間に技術的な差異があることが、上記から明らかである。特性は、少なくとも1つのパラメータの関数である。本願において、パラメータと特性は、区別しないが、用語「パラメータ」は、前者および後者の概念に使用してもよい。
「異常」は、要件からの逸脱を意味する。要件は、たとえばハードウェア/ソフトウェア複合体のための設計要件、または公衆衛生要件であってもよい。状態とプロセスは、要件から逸脱しうる。したがって、異常な状態および異常なプロセスは区別される。異常なプロセスの特定例は、経時変化故障であり、異常な状態の特定例は、突発性故障またはクラッシュである。異常は、少なくとも1つのパラメータの要件から逸脱することによって引き起こされる可能性があり、そのパラメータもまた、異常または異常なパラメータである。
「モデル」は、任意の形式(たとえば、数学形式、物理形式、記号形式、グラフィック形式、または説明的な形式)で現実を抽象的に表現したものを意味し、その現実の特定の態様を表すように設計され、検討されている問題に対する応答を得ることを可能にする。モデルは、状態、プロセス、異常(異常な状態、プロセス、パラメータ)、専門家(ユーザ)、および製品(デバイス、ソフトウェア、サービス)を説明してもよい。テンプレート、従来の表現、ルール(出力上に入力を投影または写像すること)、ニューラルネットワーク、決定木などを使用して、前記形式を表現してもよい。
「ダイナミックシステム」は、素子の数が、一定ではなく、基準点とする素子(基本素子)の位置と、ある時点とによって決定される、システムを意味する。たとえば、ダイナミックシステムは、無線ネットワークによって一体化した(ハードウェア/ソフトウェアの形で実現された)素子からなるシステムであり、基本素子と接続する素子の数は、ある時点と、基本素子の位置とによって決定され、現在の無線ネットワークへアクセスできるようにする無線局の有効範囲ゾーンの半径に依存する。ダイナミックシステム100の一例を図1に示し、以下に説明する。
図2Aは、ユーザと予防相互作用するシステム200を示す。システム200は、クライアント側、サーバ側、および第3の側を含む。観測されるシステム100は、クライアント側に位置し、システム100は、システムの素子210(基本素子)を少なくとも1つ含み、前記素子はインストールされたクライアント220を有する。この場合、クライアント220は、システムのパラメータを収集し、かつ、サーバ側と相互作用するように設計されている。第3の側には、モデル開発や製品説明/仕様などのためのソフトウェア/ハードウェアが位置し、サーバ側は、クライアントと相互作用し、第3の側から、開発したモデルを取得する。サーバ側では、得られたモデルの試験、得られたモデルの格付け、クライアントに関する統計の収集、クライアントのための構成ファイルの作成と構成ファイルの更新、モデル開発のためのインフラストラクチャの提供が行われる。
クライアントは、収集モジュール230と、分析モジュール240と、データベース250とを含む。クライアントは、任意で、インストールモジュール260を含んでもよい。収集モジュール230は、システム100のパラメータ、特定の例においては、遠隔測定パラメータを収集するように設計されている。分析モジュール240は、パラメータを状態とプロセスとに変換し、パラメータ、状態、およびプロセスを分析して異常を発見する。例示的な態様において、各技術分野に対してモデルを特定している場合、モデルによって、パラメータを状態とプロセスに変換する。いくつかの態様において、たとえば、ランダムフォレストなど、ニューラルネットワークによってモデルを実現する。分析モジュール240による分析は、モデル、たとえば状態モデルを照会する手段によって行われる。この分析モジュール240は、異常を分析して復元の方法を特定し、復元方法の実施を可能にするコンポーネントを見つける。前記方法のためのモデルも照会する。分析モジュール240は、任意にサーバ側に位置してもよい。インストールモジュール260は、復元方法を実現するソフトウェアを実施するよう設計されている。データベース250は、パラメータと状態とを保存する。プロセスは状態の時間変化であるので、データベース250によって、とりわけ、素子およびシステムにおけるプロセスに関して、分析モジュール240によって情報を得ることが可能となる。
第3の側において、開発モジュール(図では、個別に示さず)は、製品(サービスを含む)を説明し、モデルを作成し、サーバ側に結果を送信する。開発モジュールは、フレームワークと、他のソフトウェアとを含んでもよく、サーバ側とクライアント側においてモジュールが支援するフォーマットで人間が容易に理解できる製品説明を形式化し、形式化された説明に基づくモデルを含むモデルを作成し、サーバ側に結果を送信する。
サーバ側は、クライアント側と通信するためのインターフェース270および第三者開発モジュールと通信するためのインターフェース271を提供する。開発インフラストラクチャ280は、サーバ側で実現され、少なくとも下記のモジュール(図では、個別に表示せず)を含む。
・格付けモジュール
・試験モジュール
・統計収集モジュール
格付けモジュールは、特定のクライアントに送られ、かつ、分析モジュールによって照会されるモデルを識別するように設計されている。試験モジュールは、開発モジュールから得た新しいモデルを検査するように設計されている。モデルは、モデルデータベース281に保存される。統計収集モジュールは、収集されたパラメータ、照会されたモデル、および、モデル照会結果によって、クライアントからデータを受信し、統計データベース282に保存する統計を作成する。蓄積した統計は、新しいモデルの開発や既存のモデルのデバッグなどに用いられ、かつ、インターフェースを介して開発者がアクセス可能である。
図1は、観測されるダイナミックシステム100を示す。ダイナミックシステム100のコアは、クライアントがインストールされる基本素子(図ではBE)である。基本素子は、ノートブック型コンピュータ、スマートウォッチ、スマートフォン、パーソナルコンピュータなどであってよい。基本素子は、本例ではアクセスポイントを介して、他の素子にリンクされる。したがって、システムの素子の数は、基本素子が位置する有効範囲を有するアクセスポイントのアクション半径によって決定される。所与のシステム100の文脈において、特定の例では、人間を、制御/診断/監視の対象または主体として、システムの素子であるとみなしてもよい。人間を制御/診断/監視(たとえば心電図の記録)の対象であるとみなす場合、システムの他の素子は、制御の主体である。システムの素子としての人間の文脈における異常の概念を、医療要件の文脈におけるプロセスの正常な状態からの逸脱と定義してもよい。
別のケースにおいて、人間と環境は、制御/診断/監視の対象とみなされるが、システム100に対しては外部である。この場合、システムの素子は、上記分類により外部であるパラメータを収集し、これらのパラメータに基づき、制御/診断/監視の対象の状態およびプロセスを識別し、一方、人間または環境のいずれかのことがある、制御/診断/監視の対象に対して、復元方法を識別する。
システム200と観測されるダイナミックシステム100の関係を、図2Bで述べる。ダイナミックシステム100は、システム200のサブシステムであるか、またはシステム200と素子単位で交わる。たとえば、基本素子は、(図2Bに示すように)システム200とシステム100とが共有する部分であってもよい。
システム200は、異常を有するシステムのための互換性のあるコンポーネントを選択する方法を実施するよう設計されており(図3A参照)、この場合、ステップ310において、クライアント220の収集モジュール230は、このシステム100の特定機能を実現する素子からシステム100のパラメータを収集する。例示的な態様において、パラメータは、他のパラメータについても考察するが、システムの素子の構成とその実際の構造とを説明する構造パラメータと、システムの機能組織(機能のプロセス)を説明する機能パラメータとを含む。パラメータの収集を、たとえばリアルタイムで実施してもよい。収集したパラメータをクライアント220のデータベース250に保存し、ステップ320では、クライアント220の分析モジュール240が、収集したパラメータを用いて、システム100の状態モデルを照会する。状態モデルを照会する分析モジュール240は、システム100とその素子の状態がシステムに関する要件に合致しているかについて、収集したパラメータと状態モデルとを比較することによって、評価する。状態モデルは、必要なプロセスおよび状態と合致する正常なプロセスおよび状態を説明し、かつ、異常なプロセスおよび状態、たとえば、故障状態または故障プロセスを説明する。状態モデルを、クライアント220のデータベース250に保存してもよい。別の特定の例において、サーバ側がオンデマンドでクライアント220の分析モジュール240によって、状態モデルを示してもよい。状態を説明するモデルはそれぞれ、回帰モデル、分類モデル、カテゴリ化モデル、および他のモデルなど、著しく異なっていてもよい。前記モデルは、意思決定木、ニューラルネットワーク、または、IF(or/and/xor)THENタイプの論理型ルールなどに基づいてもよい。
ステップ330では、モデルの照会の結果、システムにおいて異常を検出する。異常は、少なくとも、下記の状態やプロセスであってもよい。
・必要な状態から逸脱している素子の状態。素子のパラメータの関数である。
・必要な状態から逸脱しているシステムの状態。素子の状態の関数である。
・必要なプロセスから逸脱している素子のプロセス。素子の状態の時間関数である。
・必要なプロセスから逸脱しているシステムのプロセス。システムの状態の時間関数である。
・システムが相互作用している環境の状態。必要な状態から逸脱しており、システムのパラメータによって説明可能である。
・システムが相互作用している環境のプロセス。必要なプロセスから逸脱しており、システムのパラメータによって説明可能である。
異常を発見した後、発見した異常に関する情報を、さらに処理するために形式化する。このとき、異常のクラス(および/または名前)と、異常の関数を有するシステムパラメータとによって、前記情報を特徴付けてもよい。さらに、異常を識別するパラメータを有するシステムの素子を、特性として示してもよい。異常のクラスおよび名前は、どの要件から逸脱しているかに依存する。異常として、たとえば、以下のものが挙げられる。ルータの弱信号、素子(CPU、HDD、SSD、RAMなど)の性能低下、不十分なRAM空間、データの損失/汚染など。異常が経時変化故障を伴う場合、その異常は、たとえば、識別されたデータの実際の損失またはメモリボリュームの不足ではなく、近いうちに起こりそうな異常である。特定の例において、異常には、(FURPS+分類における)機能性クラスがあり、たとえばシステムの機能を含む。この場合、機能異常は、設計または目的によって決定される機能を実行するための、システムまたはシステムの素子の能力の低下または損失である。
ステップ340において異常を検出し、その後、前記異常に関する情報を用いて、復元方法を選択するためのモデルを照会する。状態モデルと同様、復元方法を選択するためのモデルは様々であってもよく、特定の例において、説明モデルを使用してもよい。モデルの紹介の結果、ステップ350では、実施するとシステムおよび素子が確実に要件に合致する復元方法を識別する。たとえば、前記方法によって、システムに必要な機能が確実に復元される。発見された復元方法は、異常な状態またはプロセスを安定化することができ(異常の発展を停止することができ、これは経時変化故障に有効である)、かつ、素子またはシステムを異常な状態またはプロセスから必要な状態またはプロセスに変化させる(異常の消去)ことによって、システムを復元させることができる。この場合、必要な状態またはプロセスは、FURPS+分類に従って、システムに関する要件に合致する。2つ以上の復元方法を検出することができ、この場合、基本素子のユーザのプロファイルに基づいて、決定的な方法が選択される。前記プロファイルは、性別、年齢、位置、市場でのクラス、購買力(支払い能力)、ITに関する知識レベルなど、様々な特性を含んでいてもよい。
最終ステップ360において、復元方法のモデルを照会した結果として見つけた復元方法の機能を実現して、第三者の互換性のあるコンポーネントを選択する(一般的な場合、前記方法によって、コンポーネントの代わりに製品を選択する可能性がある)。モデルとデータベースの両方を、上記選択のために使用してもよく、その場合、復元方法の名前は、復元方法を確実に実現するコンポーネントに対応する。復元方法の場合と同様、2つ以上の復元コンポーネントが使用可能であり、この場合、コンポーネントはユーザのプロファイルに基づいて選択される。さらに、復元コンポーネントのメーカー(ベンダー)の評判を考慮に入れてもよい。選択したコンポーネントを、システムにおいて様々な方法によって実施することができる。ソフトウェア用の前記方法の1つは、クライアントのインストールモジュールによってソフトウェアをインストールすることである。システムまたは手段の仕様の分析に基づいて、互換性を決定する。
特定の例において、復元方法を識別しなくてもよく(ステップ340および350をスキップする)、異常に関する情報に基づいて、手段を識別する。この場合、ステップ330の実施後、ステップ360に進む。
上記方法を、システム200によって、異なる方法で、実行してもよい(図3B参照)。ステップ310〜330で、上記方法を繰り返し、その後、分岐が始まる。異常の関数を有する素子またはシステムのパラメータによって少なくとも特徴付けられる異常を検出した後、ステップ340аにおいて、利用可能な第三者手段のデータベースまたは少なくとも1つのコンポーネントに関する情報を得る。次に、ステップ320аにおいて、ステップ310で収集したパラメータのセットを用いて、システムの状態モデルをもう一度照会するが、このパラメータのセットにおいて、異常の関数を有するシステムのパラメータを、利用可能な第三者手段のデータベースからの、コンポーネントの等価なパラメータに変換する。ステップ330аでは、状態モデルの照会に基づいて、少なくとも1つのコンポーネントを第三者手段のデータベースにおいて見つける。前記コンポーネントは、
・システムと互換性があり、かつ、
・交換パラメータとしての前記コンポーネントのパラメータを用いて状態モデルを照会する際に、異常が見つからない。
ステップ330аにおいて、上記基準を満たす、2つ以上のコンポーネントが見つかりうる。その場合、見つかったコンポーネントから、特定の例においては、ステップ360bで、たとえば、基本素子のユーザのプロファイル、および/または見つけた手段のメーカー/プロバイダの評判に基づいて、1つのコンポーネントを選択する。別の特定の例において、ユーザに対して、発見した全ての手段を通知する(まず、リストの格付けを行ってもよい)。選択された手段を、異常を識別するパラメータを有するシステムの素子を実現する手段の代わりに、または、その手段に加えて、インストールしてもよい。
理解を目的として、単純化した例(図4)について考察する。クライアント220(クライアントソフトウェア)を、ノートブック型コンピュータにインストールし、次に、ノートブック型コンピュータをルータに接続する。本発明の観点では、ノートブック型コンピュータは基本素子210であり、検査対象であるシステム100を、他の素子であるルータとともに形成する。さらには、基本素子210はそれ自体、素子を含む。したがって、検査されるシステムの文脈においては、ノートブック型コンピュータはサブシステムである。クライアント220は、システムおよび素子のパラメータを収集する。この場合、前記素子は、少なくとも、セントラルプロセッサユニット、RAM、不揮発性記憶装置(NVRAM)、無線通信モジュール、およびルータである。本例において、NVRAMは、ソリッドステートドライブ(Solid State Drive:SSD)によって実現され、一方、ルータは、WPA2ソフトウェア暗号化を備えた外部ルータによって実現される。クライアント220は、以下のパラメータを収集する。
・NVRAMのSMART属性(Reallocated Sector Countなど)
・トラフィック暗号化に関するデータ(yes/no、暗号化のタイプ)
・両方向におけるトラフィック量、トラフィック密度(単位時間当たりの量)
・チャネル速度
・ルータ信号パワー
・手段の仕様
・NVRAM(タイプ(Type)、量(Value)、フォームファクタ(FF)、インターフェース(Interface))
・ルータ(WiFi(IEEE)基準、Wi−Fiデバイスの周波数範囲(Spectr)、ハードウェア暗号化支援(HBE))
収集したパラメータをまとめて、以下の表に示す。この表から、ある時点での状態Sと、プロセスS?Sn+1?…?Sn+…とを得てもよい。
クライアント220の分析モジュール240は、収集したパラメータを用いてシステムの状態モデルを照会する。状態モデルを照会する分析モジュール240は、システム100およびその素子の状態がシステムに関する要件に合致しているかどうかを評価する。本例においては、素子の異常な状態について説明する単純な論理モデルを使用する。
・IF Vn<<Vk or Vn>>Vk THEN SPEED_DEGRは、ネットワークチャネルが劣化している状態を表す。
・IF RSCn<RSCk<RSCm WHERE Tn<Tk<Tm THEN NVRAM_Sector_DEGRは、ディスク表面の経時変化故障の形式でNVRAMが劣化していることを表す。これは、ディスク表面上の摩耗を証明するセクタ再配置操作数の増加によって示される。
・IF RSC>20 THEN NVRAM_FAULTは、再配置されたセクタの臨界値20に達すると定義されるNVRAMの故障を表す。
・IF Pn>Pk>Pm and Pm<15 WHERE Tn<Tk<Tm THEN POWER_DEGRは、信号パワーが低下している状態を表す。これは、信号レベルが臨界レベル15dBmまで時間とともに低下していることによって示される。
モデルの照会の結果、下記の時点で、異常を発見する。
・時点Tにおいて、ネットワークチャネルの劣化。
・時点Tにおいて、NVRAMの劣化。
・時点Tにおいて、NVRAMの故障。
・時点Tにおいて、信号パワーの劣化。
劣化は、異常なプロセスであり、故障は、異常な状態である。異常に関する情報があると、復元方法のモデルを照会し(本例では、これも論理モデルを用いて表現する)、復元方法を決定する。
・IF POWER_DEGR THEN AREA_EXTEND 信号パワーを回復するために、ルータの有効範囲の半径を拡張することを推奨する。
・IF SPEED_DEGR WHERE ENCn=1 and HBE1=0 THEN HBE (Hardware Based Encryption) 接続速度を回復するために、ハードウェア暗号化を支援することを推奨する。
・IF SSD_FAULT THEN NVRAM _CHANGE 素子を実現する手段を交換すること、すなわち本例においてはSSDを交換することによって、NVRAMの故障を克服する。
・IF ROM_Sector_DEGR THEN NVRAM _CHANGE or BACKUP 素子を実現する手段がまだ運転中であるときに表面の劣化を識別した場合、手段の交換およびバックアップ複写の手配を検討することを推奨する。
復元方法を識別すると、推奨された復元方法を実現することができるコンポーネントが識別される。本明細書における例では、上記識別は、データベース283に問い合わせることによって行われる。前記データベースでは、復元方法に従って表が指定されている。さらに、推奨された方法を実現するだけでなく、検査対象であるシステムと互換性があるコンポーネントが選択される。そのために、検査対象であるシステムのパラメータに基づいて作成したある条件(オペレータWHERE)を問い合わせに追加する。問い合わせた結果を、問い合わせとともに示す。
・SELECT * FROM AREA_EXTEND WHERE Spectr=’2,4’ and IEEE=’802.11n’ and MaxV>80
・ZYXEL WRE2206
・Tenda A300
・NETGEAR EX2700
・ASUS RP−AC51
・SELECT * FROM HBE WHERE Spectr=’2,4’ and IEEE=’802.11n’ and MaxV_WPA2>80
・ZYXEL NBG−418N v2
・DSL−N16U
・MikroTik hAP mini
・SELECT * FROM NVRAM_CHANGE WHERE Type=’SSD’ and FF=’M.2’, and Interface=’PCIe3.0’ and Value>128
・Intel 600p
・Patriot Hellfire
・Samsung 960 EVO
・SELECT * FROM BACKUP WHERE Type=’Remote’ and Value>128 and (Trial=’Yes’ or Free=’Yes’) and Period=’Day’ and Scheme=’Incremental’
・Acronis Disk Director 12
・Veeam Agent Free
いくつかの態様において、2つ以上のコンポーネントを見つけてもよい。その後、ユーザの財政的支払い能力、ユーザのITに関する知識レベル(全ての手段が容易にインストールされるというわけではない)、専門家を要請することに対するユーザの意欲、消費者間における解決策の知名度、メーカー/サプライヤの評判など、追加する特性を考慮に入れて、見つけた手段に、さらにフィルタをかける。
特定の例において、たとえば、モデルを始動させてすぐには、復元方法のモデルを照会しなくてもよい。
・IF RSC>20 THEN NVRAM_FAULTは、再配置されたセクタの臨界値20に達すると定義されるNVRAMの故障を表す。
データベース283に問い合わせることができ、この場合、表の属性は、上記例のように復元方法に相当するのではなく、異常に相当する。
・SELECT * FROM NVRAM_FAULT WHERE Type=’SSD’ and FF=’M.2’, and Interface=’PCIe3.0’ and Value>128
異常を検出した後、図3Bで説明した方法を実行する場合、
・IF RSC>20 THEN NVRAM _FAULT
システム100と互換性のある、異常を識別するパラメータを有するシステム素子を実現することができる第三者コンポーネントに関する情報を取得する。
・SELECT * FROM NVRAM WHERE Type=’SSD’ and FF=’M.2’, and Interface=’PCIe3.0’ and Value>128
見つけた互換性のあるコンポーネントのうち、置換パラメータとしてコンポーネントのパラメータを使用して状態モデル(IF RSC>20 THEN NVRAM_FAULT)を照会した際に異常(RSC>20==False)が見つからないコンポーネントを選択する。本例において、前記コンポーネントは、適切に機能する任意のコンポーネントであることは明らかであり、適切に機能するコンポーネントの特性は、再配置されたセクタがない、言い換えれば、そのような手段に対してRSC==0が成り立つ。
所定の要件に対応する質(特性)を備えた対象を求める探索において、システム200を用いることができる。たとえば、欠員補充のための被雇用者、回答者(市場調査またはユーザインターフェース人間工学研究のためのフォーカスグループのメンバー)。過去に訓練したモデル(求人モデル)を用いて、前記探索を実施する。そのようなモデルは、多次元空間におけるクラスタであってもよく、この場合、各クラスタは、同様の質または特性を備えた対象についての説明(ハードウェア/ソフトウェアのパラメータのベクトルとして表されるものなど)を寄せ集める。たとえば、あるクラスタは、プログラミング言語C++の若手開発者についての説明を寄せ集め、別のクラスタは、データ科学の専門家についての説明を寄せ集める。訓練したモデルの別の例は、専門家、たとえば、同じC++の若手開発者またはデータ科学の専門家のクラスに対応する葉を有するツリーであってもよく、別のケースでは、サポートベクターメソッド(Support Vector Method:SVM)、ニューラルネットワーク、エキスパートシステム、または機械学習の他の既知の方法を使用してもよい。また、葉も、専門家の特定のクラスに対応するのではなく、職歴または重要なスキルなど、専門家に関する一定要件に対応してもよい。
図5は、要件を満たすユーザを探索する方法を示す。ユーザに関する要件は、第三者によって決定され、ステップ510で説明する。ある仕様内において、任意の形式から(所定のデータフォーマットテンプレートによって構成された)厳密な形式に至るまで、様々な形式で、要件を説明してもよい。たとえばソフトウェア開発者に関するそのような要件は、下記のようなものであってもよい。開発経験(勤続年数、成功プロジェクトの数)、言語、規格、およびフレームワークのシンタックスの知識、ならびにライブラリなど。
次に、特定の例において、ステップ520で、説明を形式化し、モデルを構築する。このステップの最も重要な点は、ハードウェアとソフトウェアのパラメータに、前記説明からの要件を投影させること(特定の例においては、マッピングすること)にある。たとえば、3年間の勤務および経験は、下記のように変換される。3年の経歴の長さに対応するファイルの有無、そのファイルの数または開発環境で過ごした時間、専門リソースGitHub(登録商標)またはSourceForge(登録商標)での発行(専門用語:コミット)の数、専門ツールキットの有無。フレームワークについての知識は、デバイス上のフレームワークの有無およびフレームワークへのアクセス頻度などに変換される。得られた投影から、モデルを形成することになる。
別の特定の例において、ステップ521において、既に完成しているモデルを、説明に対して選択する。要件の説明がない場合、または、説明が不完全である、たとえば、要件が、С++のシニア開発者のポジションのみを含む場合に、上記選択は有効である。そのようなモデルを構築する方法を、図6に示す。ステップ310で、システムのハードウェアおよびソフトウェアのパラメータを収集し、モデルを、ステップ520で構築するか、またはステップ521で選択し、ユーザのスキルについての説明を、収集したパラメータを使用して照会し、そして、デバイスのユーザが要件に合致しているかどうかについて、ステップ320で評価する。デバイスのユーザが要件に合致する場合、この合致に関する情報を、第三者に送信するか、またはユーザ自身に通知する。
次に、過去にタグ付けしたデータに関して訓練されたモデルを用いて、ステップ520で、要件の形式化およびモデルの構築を行ってもよい。タグ付きのデータは、ユーザの属性が知られている、言い換えれば、ユーザが所有する要件が知られている、システムのハードウェアおよびソフトウェアのパラメータである。たとえば、ユーザは、5年の開発経験を有する、WindowsおよびLinux(登録商標)におけるC++開発者であり、Boost、関係データベース、Jenkinsを用いて作業することが分かっているとする。モデルを訓練する目的は、高いレベルの要件を、システムのハードウェアおよびソフトウェアのパラメータ(低いレベルの要件)と関連付けることである。
図6аは、形式化モデルを構築する方法を示す。ステップ610において、少なくとも1つのシステムのパラメータを取得する。ステップ620においては、システムユーザの特性を、システムの機能を実現する素子から収集する。ステップ630においては、形式化モデルを訓練する。この場合、訓練プロセスにおいて、システムユーザの少なくとも1つの特性を、訓練対象モデルに入力し、一方、出力値をシステムのハードウェアおよびソフトウェアのパラメータと比較する。前記特性は、前記システムのユーザに対応する(この方法の実施形態の変形例は、誤差逆伝播法である)。
図6bは、形式化モデルを構築する別の方法を示す。ステップ610では、少なくとも1つのシステムのパラメータを取得し、ステップ620では、システムユーザの特性を、システムの機能を実現する素子から収集し、ステップ640では、形式化モデルを、システムユーザの特性をシステムのパラメータと関連付けるために構築する。形式化モデルを訓練するために選択した方法とは関係なく、最終分析において、ユーザの特性を、対応するシステムのハードウェアおよびソフトウェアのパラメータ上に投影する。得たモデルを、それぞれ別個に用いても、集合させて用いてもよく、さらには、逆の順で機能させてもよい。
たとえば、5年の開発経験およびBoostについての知識という要件が、開発者に関して作成される。このとき、特定の例において、使用されるモデルは、必要な経験を、どのパラメータがBoostを用いた作業を示すかを識別するモデルとともに、対応するハードウェアおよびソフトウェアパラメータに投影する。識別したパラメータに基づき、ベクトルを多次元空間に配置する。これは、実際、求人モデルとなる。これらのベクトルと、ステップ310でユーザのシステムから収集したパラメータから得たベクトルとを比較する。別の例において、形式化モデルが意思決定木を構成する場合、ベクトルは構築されず、ステップ520において、ステップ310で収集したパラメータによって、モデルを照会する。
効率的に復元方法を公式化すること、および、それらの復元方法を実現するコンポーネントを選択することが必ずしも可能だとは限らない。復元方法のモデルを訓練するために、デバイスの状態の変化に関する統計を収集することが必要な場合がある。したがって、互換性のあるコンポーネントを識別する方法を実行するためには、異常な状態およびプロセスに対して復元方法を利用できない事態が偶然生じた場合、異常な状態およびプロセスに関する情報を保存することができる機構が必要となる。さらに、モデルを訓練するために異常に関する情報を保存し、モデルを利用する手段の作業有効性を高めることは、有用である。別の例において、コンポーネントの選択をサーバ側で実行する場合、システムが確実に最適に機能するためには、非同期モードでのクライアントへの応答を公式化することが望ましい。
図7は、コンポーネントの非同期選択の方法を示す。ステップ310において、システムの機能を実現する素子から、システムのパラメータを取得する。この場合、パラメータは、システムの少なくとも2つの状態または2つのプロセスについて説明する。次に、ステップ320では、取得したパラメータの値を用いて、システムの状態モデルを照会する。
モデルを照会した後、ステップ710において、システムの状態およびプロセスを、異常な状態およびプロセスと、正常な状態およびプロセスとに分割し(言い換えれば、状態とプロセスを異常の基準にしたがって寄せ集める)、これにより、同一のシステムに対して2群(2つのクラスタ)の状態および/またはプロセスを得て、その後、ステップ720において、異常なクラスタからのシステムの状態/プロセスのパラメータに基づいて、少なくとも1つのルールをコンポーネント選択のために公式化する。特定の例において、前記ルールは、システムで実施されると異常を除去するコンポーネントのパラメータを含むモデルを構成する。
最終ステップ730において、第三者コンポーネントを、公式化したルールに基づいて、コンポーネントのデータベースから選択する。選択したコンポーネントのパラメータを用いてシステムの状態モデルを照会すると、システムの状態が、異常なクラスタとはならない。特定の例において、素子またはシステムの異常な状態と、同じ素子またはシステムの正常な状態とを比較することによって、選択ルールを公式化する。前記比較に基づき、異常な状態の関数を有するパラメータを決定する。これらのパラメータを正常な状態に対応する値を用いて確立し、それらの値を保証できる手段を発見するための問い合わせを行う。
システム200のモジュールは、実際の、デバイス、システム、コンポーネント、またはコンポーネントグループを示し、これらは、超小型集積回路(特定用途向け集積回路(Application Specific Integrated Circuit:ASIC))もしくは書き替え可能ゲートアレイ(Field Programmable Gate Array:FPGA)などのハードウェアを用いて、または、たとえば、マイクロプロセッサシステムと1組のプログラム命令の組み合わせなど、ソフトウェアとハードウェアとの組み合わせの形で、また、ニューロシナプティックチップに基づいて実現される。上記モジュールの機能を、もっぱらハードウェアによって実現してもよく、また、組み合わせの形で実現してもよい。この場合、ソフトウェアによって実現する機能もあれば、ハードウェアによって実現する機能もある。実施形態の変形例において、(図7で描写したような)汎用コンピュータのプロセッサ上で、コンポーネントを実施することができる。データベースは、可能な限りの方法で実現されてもよく、1つの物理的記憶媒体または様々な媒体に含まれていてもよく、また、近辺または遠隔に位置していてもよい。
図8は、コンピュータシステム20を例証するブロック図であり、例示的な態様によって、互換性のあるコンポーネントの非同期選択のシステムおよび方法の態様を示す。なお、コンピュータシステム20は、たとえば、上述したシステム100に相当しうる。コンピュータシステム20は、複数のコンピューティングデバイスの形をとってもよく、または1つのコンピューティングデバイスの形、たとえば、デスクトップコンピュータ、ノート型コンピュータ、ラップトップコンピュータ、モバイルコンピューティングデバイス、スマートフォン、タブレットコンピュータ、サーバ、メインフレーム、埋込み型デバイス、および他の形式のコンピューティングデバイスでもあり得る。
上述したように、コンピュータシステム20は、中央処理装置(Central Processing Unit:CPU)21と、システムメモリ22と、中央処理装置21に関連するメモリを含む様々なシステムコンポーネントを接続するシステムバス23と、を含む。システムバス23は、バスメモリまたはバスメモリコントローラと、周辺バスと、他のバス方式と相互作用可能なローカルバスと、を含んでもよい。前記バスとして、たとえば、PCI、ISA、PCI Express、HyperTransport(登録商標)、InfiniBand(登録商標)、Serial ATA、I2C、および他の好適な相互接続が挙げられる。中央処理装置21(プロセッサとも称する)は、1つまたは複数のコアを有する、1つまたは複数のプロセッサのセットを含みうる。プロセッサ21は、本開示の技術を実行する、コンピュータ実行可能なコードを1つ以上実行してもよい。システムメモリ22は、本明細書で使用するデータおよび/またはプロセッサ21によって実行可能なコンピュータプログラムを保存するための、任意のメモリであってもよい。システムメモリ22は、ランダムアクセスメモリ(Random Access Memory:RAM)25などの揮発性メモリ、読み出し専用メモリ(Read Only Memory:ROM)24やフラッシュメモリなどの不揮発性メモリ、またはこれらの組み合わせを含んでもよい。バイオス(Basic Input Output System:BIOS)26が、ROM24を用いてオペレーティングシステムをロードする時の手順など、コンピュータシステム20の素子間における情報送信のための基本的な手順を保存してもよい。
コンピュータシステム20は、1つ以上の記憶装置、たとえば、1つ以上の着脱可能な記憶装置27、1つ以上の着脱不可能な記憶装置28、またはそれらの組み合わせを含んでもよい。1つ以上の着脱可能な記憶装置27および着脱不可能な記憶装置28は、ストレージインターフェース32を介して、システムバス23に接続されている。一態様において、記憶装置および対応するコンピュータ可読記憶媒体は、コンピュータシステム20の、コンピュータ命令、データ構造、プログラムモジュール、および他のデータを保存するための電源非依存のモジュールである。システムメモリ22、着脱可能な記憶装置27、および着脱不可能な記憶装置28は、様々なコンピュータ可読記憶媒体を使用してもよい。コンピュータ可読記憶媒体として、たとえば、キャッシュ、スタティックラム(Static Random Access Memory:SRAM)、ダイナミックラム(Dynamic Random Access Memory:DRAM)、零点コンデンサRAM、ツイントランジスタRAM、eDRAM(Enhanced Dynamic Random Access Memory)、EDO RAM(Extended Data Output Random Access Memory)、DDR RAM(Double Data Rate Random Access Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、NRAM(Nanotube Random Access Memory)、RRAM(Resistive Random Access Memory)、SONOS(Silicon Oxide Nitride Oxide Semiconductor)型メモリ、またはPRAM(Phase-change Random Access Memory)などの機械メモリと、フラッシュメモリ、またはソリッドステートドライブ(SSD)もしくはフラッシュドライブにおける他のメモリ技術と、磁気カセット、磁気テープ、および、ハードディスクドライブまたはフロッピーディスクなどにおける磁気ディスク記憶装置と、コンパクトディスク(CD−ROM)またはディジタル多用途ディスク(Digital Versatile Disk:DVD)における光学記憶装置と、所望データを保存するために使用してもよく、コンピュータシステム20によってアクセス可能な他の媒体とが挙げられる。
コンピュータシステム20の、システムメモリ22、着脱可能な記憶装置27、および着脱不可能な記憶装置28を使用して、オペレーティングシステム35、付加的プログラムアプリケーション37、他のプログラムモジュール38、およびプログラムデータ39を保存してもよい。コンピュータシステム20は、キーボード、マウス、スタイラス、ゲームコントローラ、音声入力装置、タッチ入力装置などの入力装置40、または、プリンタもしくはスキャナーなどの他の周辺機器から、シリアルポート、パラレルポート、ユニバーサルシリアルバス(Universal Serial Bus:USB)、他の周辺インターフェースなどの1つ以上のI/Oポートを介してデータを伝達するための周辺インターフェース46を含んでもよい。1つ以上のモニタ、プロジェクタ、または統合ディスプレイなどの表示装置47もまた、ビデオアダプタなどの出力インターフェース48を介してシステムバス23に接続してもよい。表示装置47に加えて、コンピュータシステム20は、スピーカおよび他の視聴覚装置など、他の周辺出力装置(図示せず)を備えていてもよい。
コンピュータシステム20は、1つ以上のリモートコンピュータ49とのネットワーク接続を用いて、ネットワーク環境で操作してもよい。リモートコンピュータ(単数または複数)49は、コンピュータシステム20の特徴を説明した際の上記素子のほとんどまたは全てを含む、ローカルコンピュータワークステーションまたはサーバであってもよい。他のデバイスは、ルータ、ネットワークステーション、ピア接続の機器、または他のネットワークノードなど、コンピュータネットワーク内にあってもよいが、これらに限定されない。コンピュータシステム20は、ローカルエリアコンピュータネットワーク(Local-Area Computer Network:LAN)50、ワイドエリアコンピュータネットワーク(Wide-Area Computer Network:WAN)、イントラネット、およびインターネットなどの1つ以上のネットワークを介してリモートコンピュータ49と通信するための、1つ以上のネットワークインターフェース51またはネットワークアダプタを含んでもよい。ネットワークインターフェース51として、たとえば、イーサネットインターフェース、フレームリレーインターフェース、SONETインターフェース、および無線インターフェースが挙げられる。
本開示の態様は、システム、方法、および/またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品は、本開示の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(単数または複数)を含んでもよい。
コンピュータ可読記憶媒体は、コンピューティングシステム20などコンピューティングデバイスのプロセッサがアクセス可能な、命令またはデータ構造の形式のプログラムコードを保持かつ保存することができる有形の装置であり得る。コンピュータ可読記憶媒体は、電子記憶装置、磁気記憶装置、光学記憶装置、電磁気記憶装置、半導体記憶装置、またはこれらの好適な任意の組合せであってもよい。たとえば、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD−ROM(Portable Compact Disc Read-Only Memory)、DVD、フラッシュメモリ、ハードディスク、ポータブルコンピュータディスケット、メモリスティック、フロッピーディスク、またはさらに、命令を記録する溝における穿孔カードもしくは浮出し構造などの機械的符号化デバイスまでも含みうる。本明細書において、コンピュータ可読記憶媒体は、それ自体が一時的な信号、たとえば、電波もしくは他の自由に伝播する電磁波、導波管か伝送媒体を介して伝播する電磁波、またはワイヤを介して送信される電気信号などであるように解釈することはできない。
本明細書に記載したコンピュータ可読プログラム命令はそれぞれ、コンピュータ可読記憶媒体から、対応するコンピューティングデバイスに、または外部コンピュータもしくは外部記憶装置に、ネットワーク、たとえば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、および/または無線ネットワークを介して、ダウンロードすることができる。前記ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバを含んでもよい。各コンピューティングデバイスのネットワークインターフェースは、前記ネットワークから、コンピュータ可読プログラム命令を受信し、対応するそれぞれのコンピューティングデバイス内のコンピュータ可読記憶媒体に保存するためのコンピュータ可読プログラム命令を転送する。
本開示の操作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(Instruction Set Architecture:ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、または、オブジェクト指向プログラミング言語および従来の手続型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで記述されたソースコードもしくはオブジェクトコードのいずれかであってもよい。コンピュータ可読プログラム命令は、独立型のソフトウェアパッケージとして、全てをユーザコンピュータ上で実行してもよく、部分的にユーザコンピュータ上で実行してもよく、また、部分的にユーザコンピュータ上で、かつ部分的にリモートコンピュータ上で実行してもよく、または、全てをリモートコンピュータまたはサーバ上で実行してもよい。後者のシナリオにおいては、リモートコンピュータは、LANもしくはWANを含む任意のタイプのネットワークを介してユーザコンピュータに接続してもよく、または、外部コンピュータに(たとえば、インターネットを介して)接続してもよい。いくつかの態様において、たとえば、プログラマブルロジック回路、FPGA、またはプログラマブルロジックアレイ(Programmable Logic Array:PLA)を含む電子回路が、本開示の態様を実施するために、電子回路を個別化するためのコンピュータ可読プログラム命令の状態情報を利用して、コンピュータ可読プログラム命令を実行してもよい。
様々な実施形態において、本開示に記載したシステムおよび方法を、モジュールとして実装することができる。本明細書において、用語「モジュール」は、実世界の機器、コンポーネント、または、コンポーネント配置であり、これらは、たとえば、ASICもしくはFPGAなどによって、ハードウェアを用いて実装されるか、または、たとえば、モジュールの機能を実行するマイクロプロセッサシステムおよび命令セットなど、ハードウェアとソフトウェアの組み合わせとして実装される。上記ハードウェアやハードウェアとソフトウェアの上記組み合わせは、(実行中に)マイクロプロセッサシステムを特定目的の機器に変換する。モジュールは、ハードウェア単体により促進される機能と、ハードウェアとソフトウェアの組み合わせによって促進される別の機能という2つの組み合わせとして実装されてもよい。ある実装において、モジュールの少なくとも一部、場合によっては、モジュールの全てを、コンピュータシステムのプロセッサ(図6においてより詳細に記載したものなど)上で実行してもよい。したがって、各モジュールを様々な好適な構成で実現してもよく、本明細書に例示した特定の実装に限定されるものではない。
なお、態様の通常の機能のうちの全てを本明細書において開示しているわけではない。本開示のいずれの実際の実装を開発する場合において、開発者の具体的な目標を達成するためには多くの実装に固有の決定が必要であり、これらの具体的な目標は実装および開発者ごとに異なることに留意されたい。そのような開発努力は、複雑で時間を要するものであるが、本開示の利益を享受し得る当業者にとってはエンジニアリングの日常の業務であると理解されたい。

Claims (20)

  1. システム用の互換性のあるコンポーネントを選択する方法であって、
    システムの1つ以上のコンポーネントのパラメータを収集する工程と、
    前記システムの前記1つ以上のコンポーネントが前記システムに必要な状態と合致しているかについて、収集した前記パラメータを用いて1つ以上の状態モデルを照会することによって、評価する工程と、
    合致に関する前記評価に基づいて、1つ以上の異常を識別する工程と、
    前記1つ以上の異常に対応する前記システムのクラスおよびパラメータを識別するために前記1つ以上の異常を分析する工程と、
    前記システムのための1つ以上の復元方法モデルであって、前記システムの1組の所定機能を確実に復元し、前記1つ以上の異常を停止させる復元方法モデルを決定する工程と、
    前記1つ以上の復元方法モデルに対する要件を満たす1つ以上のコンポーネントを選択する工程と、
    前記1つ以上の異常を除去するために、前記システムと互換性がある前記1つ以上のコンポーネントを、前記システムにおいて実装する工程と、
    を含む、方法。
  2. 前記1つ以上の状態モデルは、要求に合致する正常なプロセスおよび状態と、故障状態および/または故障プロセスを説明する異常なプロセスとを説明する、請求項1に記載の方法。
  3. 前記1つ以上の状態モデルは、回帰モデル、分類モデル、カテゴリ化モデル、意思決定木に基づいたモデル、ニューラルネットワーク、および/または論理型ルールのうちの、1つ以上であってもよい、請求項1に記載の方法。
  4. 前記1つ以上の異常は、
    前記必要な状態から逸脱している、素子の状態、
    前記必要な状態から逸脱している、前記システムの状態、
    前記必要な状態から逸脱している、素子のプロセス、
    必要なプロセスから逸脱している、素子のプロセス、
    必要なプロセスから逸脱している、前記システムのプロセス、
    前記システムと相互作用している環境の状態であって、前記必要な状態から逸脱している状態、および
    前記システムと相互作用している前記環境のプロセスであって、前記必要なプロセスから逸脱しているプロセス、
    のうち、1つ以上を含む、請求項1に記載の方法。
  5. 前記1つ以上の異常は、
    前記システムにおけるルータの弱い信号、
    CPU、HDD、SSD、およびRAMのうち1つ以上を含む、前記システムの素子の性能劣化、
    前記システム上の不十分なRAM空間、ならびに
    前記システム上のデータ損失/汚染
    のうち、1つ以上を含む、請求項1に記載の方法。
  6. 前記1つ以上の異常の前記クラスは、機能性要件、ユーザビリティ要件、信頼性要件、性能用件、および保守性要件のうちの、1つ以上を含んでもよい、請求項1に記載の方法。
  7. 前記システムの前記基本素子のユーザプロファイルに基づいて、前記1つ以上の復元方法モデルを選択する、請求項1に記載の方法。
  8. 前記システムの前記基本素子は、前記システムのコアであり、クライアントがインストールされる、請求項1に記載の方法。
  9. 識別された前記1つ以上の異常に関する情報に基づいて、復元方法を識別することなく、復元用コンポーネントを識別する工程と、
    識別された前記復元用コンポーネントのパラメータを用いて、前記1つ以上の状態モデルを照会する工程と、
    前記システムと互換性がある少なくとも1つのコンポーネントを決定する工程であって、前記少なくとも1つのコンポーネントの前記パラメータを用いて前記1つ以上の状態モデルを照会した際に異常が識別されない、工程と、
    前記1つ以上の異常を除去するために、前記少なくとも1つのコンポーネントを前記システムに適用する工程と、
    をさらに含む、請求項1に記載の方法。
  10. 互換性のあるコンポーネントを選択するシステムであって、
    被観測システムの1つ以上のコンポーネントのパラメータを収集し、
    前記被観測システムの前記1つ以上のコンポーネントが前記システムに必要な状態と合致しているかについて、収集した前記パラメータを用いて1つ以上の状態モデルを照会することによって、評価し、
    合致に関する前記評価に基づいて、1つ以上の異常を識別し、
    前記1つ以上の異常に対応する前記被観測システムのクラスおよびパラメータを識別するために前記1つ以上の異常を分析し、
    前記被観測システムのための1つ以上の復元方法モデルであって、前記被観測システムの1組の所定機能を確実に復元し、前記1つ以上の異常を停止させる復元方法モデルを決定し、
    前記1つ以上の復元方法モデルに対する要件を満たす1つ以上のコンポーネントを選択し、かつ、
    前記システムと互換性があり、前記1つ以上の異常を除去する、前記1つ以上のコンポーネントを、前記被観測システムにおいて実装する、
    ように構成されているプロセッサを、
    含むシステム。
  11. 前記1つ以上の状態モデルは、要求に合致する正常なプロセスおよび状態と、故障状態および/または故障プロセスを説明する異常なプロセスとを説明する、請求項10に記載のシステム。
  12. 前記1つ以上の状態モデルは、回帰モデル、分類モデル、カテゴリ化モデル、意思決定木に基づいたモデル、ニューラルネットワーク、および/または論理型ルールのうちの、1つ以上であってもよい、請求項10に記載のシステム。
  13. 前記1つ以上の異常は、
    前記必要な状態から逸脱している、素子の状態、
    前記必要な状態から逸脱している、前記被観測システムの状態、
    前記必要な状態から逸脱している、素子のプロセス、
    必要なプロセスから逸脱している、素子のプロセス、
    必要なプロセスから逸脱している、前記被観測システムのプロセス、
    前記被観測システムと相互作用している環境の状態であって、前記必要な状態から逸脱している状態、および
    前記被観測システムと相互作用している前記環境のプロセスであって、前記必要なプロセスから逸脱しているプロセス、
    のうち、1つ以上を含む、請求項10に記載のシステム。
  14. 前記1つ以上の異常は、
    前記被観測システムにおけるルータの弱い信号、
    CPU、HDD、SSD、およびRAMのうち1つ以上を含む、前記被観測システムの素子の性能劣化、
    前記被観測システム上の不十分なRAM空間、ならびに
    前記被観測システム上のデータ損失/汚染
    のうち、1つ以上を含む、請求項10に記載のシステム。
  15. 前記1つ以上の異常の前記クラスは、機能性要件、ユーザビリティ要件、信頼性要件、性能用件、および保守性要件のうち、1つ以上を含んでもよい、請求項10に記載のシステム。
  16. 前記被観測システムの前記基本素子のユーザプロファイルに基づいて、前記1つ以上の復元方法モデルを選択する、請求項10に記載のシステム。
  17. 前記被観測システムの前記基本素子は、前記被観測システムのコアであり、クライアントがインストールされる、請求項10に記載のシステム。
  18. 前記プロセッサは、
    識別された前記1つ以上の異常に関する情報に基づいて、復元方法を識別することなく、復元用コンポーネントを識別し、
    識別された前記復元用コンポーネントのパラメータを用いて、前記1つ以上の状態モデルを照会し、
    前記被観測システムと互換性がある少なくとも1つのコンポーネントを決定し、前記少なくとも1つのコンポーネントの前記パラメータを用いて前記1つ以上の状態モデルを照会した際に異常が識別されず、かつ、
    前記1つ以上の異常を除去するために、前記少なくとも1つのコンポーネントを前記被観測システムに適用する、
    ように、さらに構成されている、請求項10に記載のシステム。
  19. システム用の互換性のあるコンポーネントを選択する命令を保存するコンピュータ可読媒体であって、
    前記命令は、
    システムの1つ以上のコンポーネントのパラメータを収集することと、
    前記システムの前記1つ以上のコンポーネントが前記システムに必要な状態と合致しているかについて、収集した前記パラメータを用いて1つ以上の状態モデルを照会することによって、評価することと、
    合致に関する前記評価に基づいて、1つ以上の異常を識別することと、
    前記1つ以上の異常に対応する前記システムのクラスおよびパラメータを識別するために、前記1つ以上の異常を分析することと、
    前記システムのための1つ以上の復元方法モデルであって、前記システムの1組の所定機能を確実に復元し、前記1つ以上の異常を停止させる復元方法モデルを決定することと、
    前記1つ以上の復元方法モデルに対する要件を満たす1つ以上のコンポーネントを選択することと、
    前記1つ以上の異常を除去するために、前記システムと互換性がある前記1つ以上のコンポーネントを、前記システムにおいて実装することと、
    を含む、コンピュータ可読媒体。
  20. 前記命令は、
    識別された前記1つ以上の異常に関する情報に基づいて、復元方法を識別することなく、復元用コンポーネントを識別することと、
    識別された前記復元用コンポーネントのパラメータを用いて、前記1つ以上の状態モデルを照会することと、
    前記システムと互換性がある少なくとも1つのコンポーネントを決定することであって、前記少なくとも1つのコンポーネントの前記パラメータを用いて前記1つ以上の状態モデルを照会した際に異常が識別されない、ことと、
    前記1つ以上の異常を除去するために、前記少なくとも1つのコンポーネントを前記システムに適用すること、
    をさらに含む、請求項19に記載の媒体。
JP2020014076A 2019-03-29 2020-01-30 互換性のあるコンポーネントの非同期選択のシステムおよび方法 Active JP7369630B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
RU2019109172 2019-03-29
RU2019109172A RU2747474C2 (ru) 2019-03-29 2019-03-29 Способ асинхронного выбора совместимых продуктов
US16/502,184 2019-07-03
US16/502,184 US11474895B2 (en) 2019-03-29 2019-07-03 System and method of asynchronous selection of compatible components

Publications (2)

Publication Number Publication Date
JP2020166829A true JP2020166829A (ja) 2020-10-08
JP7369630B2 JP7369630B2 (ja) 2023-10-26

Family

ID=72516589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020014076A Active JP7369630B2 (ja) 2019-03-29 2020-01-30 互換性のあるコンポーネントの非同期選択のシステムおよび方法

Country Status (5)

Country Link
US (2) US11474895B2 (ja)
EP (1) EP3716171A1 (ja)
JP (1) JP7369630B2 (ja)
CN (1) CN111752731B (ja)
RU (1) RU2747474C2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2747474C2 (ru) * 2019-03-29 2021-05-05 Акционерное общество "Лаборатория Касперского" Способ асинхронного выбора совместимых продуктов
US11449407B2 (en) * 2020-05-28 2022-09-20 Bank Of America Corporation System and method for monitoring computing platform parameters and dynamically generating and deploying monitoring packages
CN113159107B (zh) * 2021-02-26 2023-09-01 中国银联股份有限公司 一种异常处理的方法及装置
TWI806811B (zh) * 2023-01-09 2023-06-21 玉山綜合證券股份有限公司 支援回覆短期公告資訊之對話式人工智慧系統及於對話中回覆短期公告資訊之方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252189A (ja) * 2005-03-10 2006-09-21 Hitachi Ltd アプリケーション運用管理システム及び方法
JP2017224272A (ja) * 2016-02-24 2017-12-21 廣達電腦股▲ふん▼有限公司 ハードウェア障害回復システム

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687847B1 (en) * 1999-04-21 2004-02-03 Cornell Research Foundation, Inc. Failure detector with consensus protocol
US6684247B1 (en) * 2000-04-04 2004-01-27 Telcordia Technologies, Inc. Method and system for identifying congestion and anomalies in a network
US7068998B2 (en) * 2001-04-13 2006-06-27 Northrop Grumman Corp. Methodology for the detection of intrusion into radio frequency (RF) based networks including tactical data links and the tactical internet
WO2005036418A1 (en) * 2003-10-13 2005-04-21 Illuminator (Israel) Ltd. Apparatus and method for information recovery quality assessment in a computer system
US7581003B2 (en) * 2003-12-31 2009-08-25 Microsoft Corporation System and method for automatic recovery from fault conditions in networked computer services
US20070028219A1 (en) 2004-10-15 2007-02-01 Miller William L Method and system for anomaly detection
WO2006077646A1 (ja) * 2005-01-24 2006-07-27 Fujitsu Limited 部品交換手順特定方法及びプログラム
US20060179349A1 (en) * 2005-02-09 2006-08-10 Preemptive Solutions, Llc System and method for tracking exceptional states
US20070022315A1 (en) * 2005-06-29 2007-01-25 University Of Washington Detecting and reporting changes on networked computers
US20070124283A1 (en) * 2005-11-28 2007-05-31 Gotts John W Search engine with community feedback system
US9710817B2 (en) 2008-09-30 2017-07-18 Microsoft Technology Licensing, Llc Adaptive run-time advertisements
US20090299817A1 (en) 2008-06-03 2009-12-03 Qualcomm Incorporated Marketing and advertising framework for a wireless device
US8595282B2 (en) * 2008-06-30 2013-11-26 Symantec Corporation Simplified communication of a reputation score for an entity
JP5301310B2 (ja) * 2009-02-17 2013-09-25 株式会社日立製作所 異常検知方法及び異常検知システム
US20140046645A1 (en) * 2009-05-04 2014-02-13 Camber Defense Security And Systems Solutions, Inc. Systems and methods for network monitoring and analysis of a simulated network
US8572740B2 (en) * 2009-10-01 2013-10-29 Kaspersky Lab, Zao Method and system for detection of previously unknown malware
US8356075B2 (en) * 2010-05-13 2013-01-15 Sapag Distributed business process management system with local resource utilization
US8566640B2 (en) * 2010-07-19 2013-10-22 Veeam Software Ag Systems, methods, and computer program products for instant recovery of image level backups
US9158976B2 (en) * 2011-05-18 2015-10-13 International Business Machines Corporation Efficient retrieval of anomalous events with priority learning
US9092802B1 (en) * 2011-08-15 2015-07-28 Ramakrishna Akella Statistical machine learning and business process models systems and methods
US8732525B2 (en) * 2011-10-11 2014-05-20 International Business Machines Corporation User-coordinated resource recovery
WO2014043667A1 (en) * 2012-09-17 2014-03-20 Siemens Corporation Logic based approach for system behavior diagnosis
US9197511B2 (en) * 2012-10-12 2015-11-24 Adobe Systems Incorporated Anomaly detection in network-site metrics using predictive modeling
RU2536663C2 (ru) * 2012-12-25 2014-12-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ защиты от нелегального использования облачных инфраструктур
US10257665B2 (en) * 2013-02-25 2019-04-09 Qualcomm Incorporated Analytics engines for IoT devices
US10445514B1 (en) * 2013-05-17 2019-10-15 Amazon Technologies, Inc. Request processing in a compromised account
US9887889B1 (en) * 2013-07-15 2018-02-06 Amazon Technologies, Inc. State reconciliation using event tracking and polling
EP3058691A1 (en) * 2013-10-18 2016-08-24 Telefonaktiebolaget LM Ericsson (publ) Classification of detected network anomalies using additional data
US9250923B2 (en) * 2013-11-26 2016-02-02 Ncr Corporation Techniques for computer system recovery
US9503467B2 (en) * 2014-05-22 2016-11-22 Accenture Global Services Limited Network anomaly detection
US10084638B2 (en) * 2014-08-13 2018-09-25 Tyco Safety Products Canada Ltd. Method and apparatus for automation and alarm architecture
US9378079B2 (en) * 2014-09-02 2016-06-28 Microsoft Technology Licensing, Llc Detection of anomalies in error signals of cloud based service
US9565203B2 (en) * 2014-11-13 2017-02-07 Cyber-Ark Software Ltd. Systems and methods for detection of anomalous network behavior
US10261851B2 (en) * 2015-01-23 2019-04-16 Lightbend, Inc. Anomaly detection using circumstance-specific detectors
US20160217056A1 (en) * 2015-01-28 2016-07-28 Hewlett-Packard Development Company, L.P. Detecting flow anomalies
US10587639B2 (en) * 2015-03-10 2020-03-10 Ca, Inc. Assessing trust of components in systems
US20160282821A1 (en) * 2015-03-25 2016-09-29 Nec Laboratories America, Inc. Management of complex physical systems using time series segmentation to determine behavior switching
US10498815B2 (en) * 2015-05-21 2019-12-03 Netapp Inc. Data recovery objective modeling
US10536357B2 (en) * 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
RU2622630C2 (ru) * 2015-06-05 2017-06-16 Закрытое акционерное общество "Лаборатория Касперского" Система и способ восстановления модифицированных данных
US9575828B2 (en) * 2015-07-08 2017-02-21 Cisco Technology, Inc. Correctly identifying potential anomalies in a distributed storage system
WO2017014775A1 (en) * 2015-07-22 2017-01-26 Hewlett Packard Enterprise Development Lp Monitoring a sensor array
US9697070B2 (en) * 2015-08-31 2017-07-04 Microsoft Technology Licensing, Llc Predicting service issues by detecting anomalies in event signal
US9699205B2 (en) * 2015-08-31 2017-07-04 Splunk Inc. Network security system
US9749358B2 (en) * 2015-09-05 2017-08-29 Nudata Security Inc. Systems and methods for matching and scoring sameness
US10198327B1 (en) * 2015-09-22 2019-02-05 EMC IP Holding Company LLC Method and system for performing group recovery from a recovery source to multiple recovery targets
US10169719B2 (en) * 2015-10-20 2019-01-01 International Business Machines Corporation User configurable message anomaly scoring to identify unusual activity in information technology systems
US9865101B2 (en) * 2015-10-30 2018-01-09 Wipro Limited Methods for detecting one or more aircraft anomalies and devices thereof
US9979675B2 (en) * 2016-02-26 2018-05-22 Microsoft Technology Licensing, Llc Anomaly detection and classification using telemetry data
US10459827B1 (en) * 2016-03-22 2019-10-29 Electronic Arts Inc. Machine-learning based anomaly detection for heterogenous data sources
CA3032817C (en) * 2016-08-02 2020-02-11 Pindrop Security, Inc. Method and apparatus for threat identification through analysis of communications signaling, events, and participants
US10129274B2 (en) * 2016-09-22 2018-11-13 Adobe Systems Incorporated Identifying significant anomalous segments of a metrics dataset
US10673880B1 (en) * 2016-09-26 2020-06-02 Splunk Inc. Anomaly detection to identify security threats
US20180091586A1 (en) * 2016-09-26 2018-03-29 Linkedin Corporation Self-healing a message brokering cluster
US20180091369A1 (en) * 2016-09-28 2018-03-29 Intel Corporation Techniques to detect anomalies in software defined networking environments
EP3615899A4 (en) 2017-04-26 2021-01-13 Augury Systems Ltd. SYSTEMS AND METHODS FOR MONITORING MECHANICAL AND ELECTRICAL MACHINERY
US10887306B2 (en) * 2017-05-11 2021-01-05 International Business Machines Corporation Authenticating an unknown device based on relationships with other devices in a group of devices
US11250343B2 (en) 2017-06-08 2022-02-15 Sap Se Machine learning anomaly detection
US20180373865A1 (en) * 2017-06-26 2018-12-27 Microsoft Technology Licensing, Llc Call flow-based anomaly detection for layered software systems
US10872149B1 (en) * 2017-07-25 2020-12-22 Perspecta Labs Inc. Anomaly detection based on side-channel emanations
US10560487B2 (en) * 2017-07-26 2020-02-11 International Business Machines Corporation Intrusion detection and mitigation in data processing
US10187326B1 (en) * 2018-02-22 2019-01-22 Capital One Services, Llc Real-time analysis of multidimensional time series data to identify an operational anomaly
US10965563B2 (en) * 2018-03-22 2021-03-30 Cisco Technology, Inc. Automatic monitoring of the health of an identity services engine
RU2696240C1 (ru) * 2018-03-30 2019-07-31 Акционерное общество "Лаборатория Касперского" Способ анонимного обмена данными в клиент-серверной архитектуре
US11250351B2 (en) * 2018-07-11 2022-02-15 Palo Alto Research Center Incorporated System and method for one-class similarity machines for anomaly detection
KR101940029B1 (ko) * 2018-07-11 2019-01-18 주식회사 마키나락스 어노말리 디텍션
US20200092180A1 (en) * 2018-09-14 2020-03-19 Capital One Services, Llc Methods and systems for microservices observability automation
RU2739866C2 (ru) * 2018-12-28 2020-12-29 Акционерное общество "Лаборатория Касперского" Способ обнаружения совместимых средств для систем с аномалиями
US10802942B2 (en) * 2018-12-28 2020-10-13 Intel Corporation Methods and apparatus to detect anomalies of a monitored system
RU2739873C2 (ru) * 2019-02-07 2020-12-29 Акционерное общество "Лаборатория Касперского" Способ поиска пользователей, соответствующих требованиям
RU2747474C2 (ru) * 2019-03-29 2021-05-05 Акционерное общество "Лаборатория Касперского" Способ асинхронного выбора совместимых продуктов
US11023295B2 (en) * 2019-10-25 2021-06-01 Accenture Global Solutions Limited Utilizing a neural network model to determine risk associated with an application programming interface of a web application

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252189A (ja) * 2005-03-10 2006-09-21 Hitachi Ltd アプリケーション運用管理システム及び方法
JP2017224272A (ja) * 2016-02-24 2017-12-21 廣達電腦股▲ふん▼有限公司 ハードウェア障害回復システム

Also Published As

Publication number Publication date
RU2019109172A3 (ja) 2020-09-29
EP3716171A1 (en) 2020-09-30
RU2019109172A (ru) 2020-09-29
US20200301775A1 (en) 2020-09-24
RU2747474C2 (ru) 2021-05-05
CN111752731A (zh) 2020-10-09
JP7369630B2 (ja) 2023-10-26
US20200310905A1 (en) 2020-10-01
US11003525B2 (en) 2021-05-11
CN111752731B (zh) 2024-02-13
US11474895B2 (en) 2022-10-18

Similar Documents

Publication Publication Date Title
JP7369630B2 (ja) 互換性のあるコンポーネントの非同期選択のシステムおよび方法
CN111539756B (zh) 基于搜索要求识别用户并将用户选为目标的系统和方法
US9269095B1 (en) Methods and systems for visual replay of predictive engine performance
US20200104774A1 (en) Cognitive user interface for technical issue detection by process behavior analysis for information technology service workloads
US10409667B2 (en) Error assignment for computer programs
US11614992B2 (en) Detection of system anomalies
US20190296989A1 (en) Information technology services with feedback-driven self-correcting machine learnings
Bogojeska et al. IBM predictive analytics reduces server downtime
Hoffmann et al. Analyzing usage data in enterprise cloud software: An action design research approach
EP3675017A1 (en) System and method of determining compatible modules
EP3693913A1 (en) System and method of identifying and targeting users based on search requirements
EP3675018A1 (en) Method of detecting compatible systems for systems with anomalies
US20240161130A1 (en) Determining a new candidate feature for a predetermined product based on an implicit request of a user
US11812285B1 (en) Artificial intelligence operations assisted data center monitoring and management adoption facilitator
US11924022B2 (en) Data center issue remediation analysis user interface
RU2712409C1 (ru) Способ определения совместимых средств
US20240113938A1 (en) Admin change recommendation in an enterprise
US20230131986A1 (en) Data Center Issue Impact Analysis
Schiffers Achieving Service Dependability Through Context-Awareness

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220714

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230928

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231016

R150 Certificate of patent or registration of utility model

Ref document number: 7369630

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150