(57)【特許請求の範囲】
【請求項１】
車両（１０）または船舶または航空機において、多重にインプリメントされたファンクションを提供するために、複数のプログラムファンクション（ＡＰＦａ，ＡＰＦｂ）のいずれかを選択する方法において、
第１のプログラムファンクション（ＡＰＦａ）の実行時に用いられるファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対する、ファンクション特有でないデグラデーションレベルを表す個別パフォーマンス値（Deg0, Deg1）と、多重にインプリメントされた複数のファンクション全体のデグラデーションレベルを表す総パフォーマンス値（ｐ）との間の、第１の依存関係（Ａ）を記録するステップと、
第２のプログラムファンクション（ＡＰＦｂ）の実行時に用いられるファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対するデグラデーションレベルを表す個別パフォーマンス値（Deg0, Deg1）と、前記総パフォーマンス値（ｐ）との間の、第２の依存関係（Ａ）を記録するステップと、
前記第１のプログラムファンクション（ＡＰＦａ）の複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の現時点の第１の個別パフォーマンス値（Ｘ）を求めるステップと、
前記第２のプログラムファンクション（ＡＰＦｂ）の複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の現時点の第２の個別パフォーマンス値（Ｘ）を求めるステップと、
求められた前記第１の個別パフォーマンス値（Ｘ）と、記録された前記第１の依存関係（Ａ）とから、第１の総パフォーマンス値（ｙ１）を求めるステップと、
求められた前記第２の個別パフォーマンス値（Ｘ）と、記録された前記第２の依存関係（Ａ）とから、第２の総パフォーマンス値（ｙ２）を求めるステップと、
前記第１の総パフォーマンス値（ｙ１）と、前記第２の総パフォーマンス値（ｙ２）とから、クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）を求めるステップであって、クラスタは複数のファンクションから構成されており、前記クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）は、当該クラスタのデグラデーションレベルを表す、ステップと、
前記クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）、または、該クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）から求められたまたは計算された少なくとも１つの値に基づいて、多重にインプリメントされた前記ファンクションを提供するため、前記第１または第２のプログラムファンクション（ＡＰＦａ，ＡＰＦｂ）または他のプログラムファンクションを選択するステップと
を含む、方法。
【請求項２】
車両（１０）または船舶または航空機において、多重にインプリメントされたファンクション（５４，５６）を提供するために、１つのプログラムファンクション（ＡＰＦａ，ＡＰＦｂ）を選択する方法において、
前記プログラムファンクション（ＡＰＦａ，ＡＰＦｂ）の実行時に用いられるファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対する、ファンクション特有でないデグラデーションレベルを表す個別パフォーマンス値（Deg0, Deg1）と、多重にインプリメントされた１つのファンクション（５４，５６）全体のデグラデーションレベルを表す総パフォーマンス値（ｐ）との間の依存関係（Ａ）を記録するステップと、
前記プログラムファンクション（ＡＰＦａ，ＡＰＦｂ）の前記ファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の現時点の個別パフォーマンス値（Ｘ）を求めるステップと、
求められた前記個別パフォーマンス値（Ｘ）と、記録された前記依存関係（Ａ）とから、前記ファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対する総パフォーマンス値（ｙ）を求めるステップと、
前記総パフォーマンス値（ｙ）、または、該総パフォーマンス値（ｙ）から求められたまたは計算された少なくとも１つの値に基づいて、多重にインプリメントされたファンクション（５４，５６）を提供するため、第１のプログラムファンクション（ＡＰＦａ）または第２のプログラムファンクション（ＡＰＦｂ）を選択するステップと
を含む、方法。
【請求項３】
前記依存関係が行列（Ａ）に記録され、
前記行列（Ａ）の行（１７０ａ〜１８６ａ）が、前記総パフォーマンス値（ｐ）に割り当てられており、前記行列（Ａ）の列（１５６ａ〜１６６ａ）が、前記個別パフォーマンス値（Deg0, Deg1）に割り当てられており、
または、前記行列（Ａ）の列が前記総パフォーマンス値（ｐ）に割り当てられており、前記行列（Ａ）の行が前記個別パフォーマンス値（Deg0, Deg1）に割り当てられており、
前記行列（Ａ）は、互いに異なる２つの値だけを含み、
ＯＲ結合を成すようにするために、および／または、該当する総パフォーマンス値を決定づける複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の状態を考慮するために、少なくとも１つの総パフォーマンス値に対し、前記行列（Ａ）の少なくとも２つの行（１７２ｂ１，１７２ｂ２）または前記行列（Ａ）の少なくとも２つの列が設けられている、
請求項１または２に記載の方法。
【請求項４】
前記ファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の複数のクラス（ＩＤ）が規定され、前記ファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の個別パフォーマンス値（Deg0, Deg1）は、クラス固有の重み付けがなされており、
前記ファンクション（５４，５６）の少なくとも２つのファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）は、同じクラス（ＩＤ）に属しており、
および／または、前記ファンクション（５４，５６）の少なくとも２つのファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）は、互いに異なるクラス（ＩＤ）に属しており、
前記クラス（ＩＤ）は、以下の冗長性フィーチャのうち少なくとも１つの、または少なくとも２つの、またはすべての冗長性フィーチャに基づき、規定され、前記冗長性フィーチャとは、
・ファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の冗長性なし、または多重に設けられた複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）による冗長性あり、
・１つのファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に関する値冗長性なし、または値冗長性あり、ここで、値冗長性とは、値を複数回求め、かつ、複数回伝達すること、または、冗長な複数のセンサを使用することを意味している、
・通信リンク冗長性なし、または多重の通信リンク冗長性あり、
である、
請求項１から３までのいずれか１項に記載の方法。
【請求項５】
前記総パフォーマンス値（ｐ）は、前記複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対して、エラーによるネガティブな影響に基づいて判断されており、
前記エラーによるネガティブな影響は、少なくとも、乗員および／または貨物の損傷、
メンテナンスタスクまたはメンテナンスインターバルの不足、または、
ドライビングまたはドライビングタスクまたはフライトの中断、
に関連している、
請求項１から４までのいずれか１項に記載の方法。
【請求項６】
前記現時点の個別パフォーマンス値（Deg0, Deg1）が行列（Ｘ）またはベクトルに記録され、
前記行列（Ｘ）または前記ベクトルは、互いに異なる２つの値だけを含む、
請求項１から５までのいずれか１項に記載の方法。
【請求項７】
前記総パフォーマンス値（ｙ）は、前記両方の行列（Ａ，Ｘ）の乗算により、または前記行列（Ａ）と前記ベクトルとの乗算により、求められる、
請求項３または６に記載の方法。
【請求項８】
前記総パフォーマンス値（ｙ）は、計算ファンクション（５５６，５５８）を用いて求められ、
該計算ファンクション（５５６，５５８）は、前記複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の個数とは異なる値に対しては、第１の値となるよう定義されており、前記個数と等しい値に対しては前記第１の値とは異なる第２の値となるよう定義されている、
請求項７に記載の方法。
【請求項９】
前記総パフォーマンス値（ｙ）を求めるために、ベクトル（ｐ）が用いられ、該ベクトル（ｐ）において前記総パフォーマンス値が、記録された前記依存関係（Ａ）に従って記録されており、
前記ベクトル（ｐ）と、前記計算ファンクション（５５６，５５８）を用いて求められたベクトルまたは行列とが乗算され、
および／または、当該方法は周期的に実施される、
請求項８に記載の方法。
【請求項１０】
少なくとも１つのファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）はネットワークノードであり、
および／または、少なくとも１つのファンクションユニットは、プログラムファンクション（ＡＰＦ）自体であり、
ドライビングのためのファンクション（５４）が設けられており、
該ドライビングのためのファンクション（５４）は、以下のファンクションユニットのうちの少なくとも１つを含み、すなわち、
・アクセルペダル（１６）に関するファンクション、
・少なくとも１つまたは少なくとも２つまたは少なくとも４つの、車輪（ＨＲ，ＨＬ）に関するファンクション（２０，２２）、該ファンクションは、駆動原動機に関するファンクションをそれぞれ含む、
・前記ドライビング（ＡＰＦ）に関するプログラム、
のうちの少なくとも１つを含み、
ブレーキングのためのファンクションが設けられており、
該ブレーキングのためのファンクションは、以下のファンクションユニットのうちの少なくとも１つを含み、すなわち、
・ブレーキペダルにおける運転者のブレーキング要求を読み取るユニット、
・ブレーキハイドロリクスを制御するユニット、
・少なくとも２つのユニットであって、ブレーキングにも使用可能である電気的に駆動される車輪、
・運転者が要求するブレーキング命令を、車輪と、ハイドロリックブレーキを制御するネットワークノードのために、目標ブレーキング設定に変換するタスクを有するプログラムファンクション、
のうちの少なくとも１つを含み、
ステアリングのためのファンクションが設けられており、
該ステアリングのためのファンクションは、以下のファンクションユニットのうちの少なくとも１つを含み、すなわち、
・ステアリングコントローラの制御および実際ステアリングポジションの出力、
・ステアリングホイールにおける目標ステアリング角の評価、
・プログラムファンクションであるコントローラ設定＝ｆ（実際ステアリング角、目標ステアリング角）、
のうちの少なくとも１つを含み、
ＡＢＳ、ＥＳＰまたはフルオートマチックドライビングのためのファンクションが設けられている、
請求項１から９までのいずれか１項に記載の方法。
【請求項１１】
複数のファンクションに対し、またはすべてのファンクションに対し、クラスタパフォーマンス値（５６４）は、エラーのネガティブな影響に基づいて判断されており、前記エラーのネガティブな影響は、
乗員および／または貨物の損傷、
メンテナンスタスクまたはメンテナンスインターバルの不足、または、
ドライビングまたはドライビングタスクまたはフライトの中断、
に関連するものであり、
以下のクラスすなわち、
・最も重要な１つのファンクション（５４，５６）または最も重要な複数のファンクション、
・２番目に重要な１つのファンクションまたは２番目に重要な複数のファンクション、
・重要度が低い１つのファンクションまたは重要度が低い複数のファンクション、
のうち少なくとも１つまたは少なくとも２つまたはすべてが考慮される、
請求項１から１０までのいずれか１項に記載の方法。
【請求項１２】
１つのクラスタの複数のファンクションのためにクラスタパフォーマンス値（５６４）がIF THENクエリまたはCASEクエリを介して、求められる、
請求項１１に記載の方法。
【請求項１３】
請求項１から１２までのいずれか１項に記載の方法を実施するための装置であって、
・記憶ユニット（Ｍ１）が設けられており、該記憶ユニット（Ｍ１）には、第１のプログラムファンクション（ＡＰＦａ）の実行時に用いられる複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対する、ファンクション特有でないデグラデーションレベルを表す個別パフォーマンス値（Deg0, Deg1）と、多重にインプリメントされた複数のファンクション全体のデグラデーションレベルを表す総パフォーマンス値（ｐ）との間の、第１の依存関係（Ａ）が記録され、または記録されており、さらに該記憶ユニット（Ｍ１）には、第２のプログラムファンクション（ＡＰＦｂ）の実行時に用いられる複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対する、ファンクション特有でないデグラデーションレベルを表す個別パフォーマンス値（Deg0, Deg1）と、前記総パフォーマンス値（ｐ）との間の、第２の依存関係（Ａ）が記録され、または記録されており、
・算出ユニット（Ｐ）が設けられており、該算出ユニット（Ｐ）は、前記第１のプログラムファンクション（ＡＰＦａ）の複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の現時点の第１の個別パフォーマンス値（Ｘ）を求め、さらに該算出ユニット（Ｐ）は、前記第２のプログラムファンクション（ＡＰＦｂ）の複数のファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の現時点の第２の個別パフォーマンス値（Ｘ）を求め、
・第２の算出ユニット（Ｐ）が設けられており、該第２の算出ユニット（Ｐ）は、求められた前記第１の個別パフォーマンス値（Ｘ）と、記録された前記第１の依存関係（Ａ）とから、第１の総パフォーマンス値（ｙ１）を求め（７０２）、さらに該第２の算出ユニット（Ｐ）は、求められた前記第２の個別パフォーマンス値（Ｘ）と、記録された前記第２の依存関係（Ａ）とから、第２の総パフォーマンス値（ｙ２）を求め（７０２）、
・第３の算出ユニット（Ｐ）が設けられており、該第３の算出ユニット（Ｐ）は、前記第１の総パフォーマンス値（ｙ１）と、前記第２の総パフォーマンス値（ｙ２）とから、クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）を求め（７０６）、ここでクラスタは、複数のファンクションから構成されており、前記クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）は、当該クラスタのデグラデーションレベルを表す、
・選択ユニット（Ｐ）が設けられており、該選択ユニット（Ｐ）は、前記クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）を、または、該クラスタパフォーマンス値（ｚ１ａ，ｚ１ｂ）から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供するため、前記第１のプログラムファンクション（ＡＰＦａ）および前記第２のプログラムファンクション（ＡＰＦｂ）または他のプログラムファンクションを選択するために用いる、
装置。
【請求項１４】
請求項１から１２までのいずれか１項に記載の方法を実施するための装置であって、
・記憶ユニット（Ｍ１）が設けられており、該記憶ユニット（Ｍ１）には、１つのプログラムファンクション（ＡＰＦａ）の実行時に用いられるファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）に対する、ファンクション特有でないデグラデーションレベルを表す個別パフォーマンス値（Deg0, Deg1）と、多重にインプリメントされた１つのファンクション（５４，５６）全体のデグラデーションレベルを表す総パフォーマンス値（ｐ）との間の依存関係（Ａ）が記録され、または記録されており、
・算出ユニット（Ｐ）が設けられており、該算出ユニット（Ｐ）は、前記ファンクションユニット（１６，２０，２２，Ｍ，ＡＰＦ）の現時点の個別パフォーマンス値（Ｘ）を求め、
・別の算出ユニット（Ｐ）または計算ユニットが設けられており、該ユニットは、求められた個別パフォーマンス値（Ｘ）と、記録された依存関係（Ａ）とを、総パフォーマンス値（ｙ）を求めるまたは計算するために用い（７０２）、
・選択ユニット（Ｐ）が設けられており、該選択ユニット（Ｐ）は、現時点の総パフォーマンス値（ｙ）を、または、該総パフォーマンス値（ｙ）から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされた前記ファンクション（５４，５６）を提供するため、前記第１のプログラムファンクション（ＡＰＦａ）または第２のプログラムファンクション（ＡＰＦｂ）を選択するために用いる、
装置。
【請求項１５】
請求項１３または１４に記載の装置を備えた車両（１０）、船舶、または航空機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は特に、多重にインプリメントされたファンクションすなわち冗長的に設けられるファンクションを提供するために、プログラムファンクションを選択する方法もしくは装置に関する。この場合、一重の冗長すなわち２つのファンクションとしてもよいし、または１つよりも多くの複数の冗長としてもよい。互いに冗長構成を成す複数のファンクションを同一の態様で提供することもできるし、または互いに異なる態様で提供することもでき、これはたとえば、一方の冗長的なファンクションによって緊急ファンクションだけを保証しようという場合である。
【０００２】
特に自律走行との関連で、冗長システムは極めて重要である。自律走行は、電気車両についても、内燃機関車両についても、さらにハイブリッド車両についても、考慮の対象となっている。航空分野においては、すでにかなり以前から自律飛行が行われている。ただし航空分野においても、冗長システムをなおいっそう改善することが可能である。
【０００３】
特に車両または船舶または航空機において、多重にインプリメントされたファンクションを提供するために複数のプログラムファンクションを選択する、本発明による方法に対し、以下を適用することができる。すなわち、
・第１のプログラムファンクションの実行時に用いられるファンクションユニットに対する個別パフォーマンス値と、多重にインプリメントされた複数のファンクションに対して規定されている総パフォーマンス値との間の、第１の依存関係が記録される、または記録されている。
・第２のプログラムファンクションの実行時に用いられるファンクションユニットに対する個別パフォーマンス値と、規定されている総パフォーマンス値との間の、第２の依存関係が記録される、または記録されている。
・第１のプログラムファンクションにおける複数のファンクションユニットの現時点の第１の個別パフォーマンス値が求められる。
・第２のプログラムファンクションにおける複数のファンクションユニットの現時点の第２の個別パフォーマンス値が求められる。
・求められた第１の個別パフォーマンス値と、記録された第１の依存関係とが、第１の総パフォーマンス値を求めるまたは計算するために用いられる。
・求められた第２の個別パフォーマンス値と、記録された第２の依存関係とが、第２の総パフォーマンス値を求めるまたは計算するために用いられる。
・第１の総パフォーマンス値と、第２の総パフォーマンス値とから、クラスタパフォーマンス値が求められる。
・クラスタパフォーマンス値が、または、このクラスタパフォーマンス値から求められたまたは計算された少なくとも１つの値が、多重にインプリメントされたファンクションを提供する目的で、上述のプログラムファンクションまたは他のプログラムファンクションを選択するために用いられる。
【０００４】
さらに本発明は、特に車両または船舶または航空機において、多重にインプリメントされたファンクションを提供するために１つのプログラムファンクションを選択する方法に関する。この場合、
・上記のプログラムファンクションの実行時に用いられるファンクションユニット（集合体／ネットワークノード）に対する個別パフォーマンス値と、多重にインプリメントされたファンクションに対して規定されている総パフォーマンス値との間の、依存関係が記録される、または記録されている。
・複数のファンクションユニットの現時点の個別パフォーマンス値が求められる。
・求められた個別パフォーマンス値と、記録された依存関係とが、総パフォーマンス値を求めるまたは計算するために用いられる。
・総パフォーマンス値が、または、この総パフォーマンス値から求められたまたは計算された少なくとも１つの値が、多重にインプリメントされたファンクションを提供する目的で、上述のプログラムファンクションまたは他のプログラムファンクションを選択するために用いられる。
【０００５】
特に上述の方法の実施に適した装置は、以下を含むことができる。すなわち、
・記憶ユニット。この記憶ユニットには、第１のプログラムファンクションの実行時に用いられる複数のファンクションユニットに対する個別パフォーマンス値と、多重にインプリメントされた複数のファンクションに対して規定されている総パフォーマンス値との間の、第１の依存関係が記録される、または記録されている。さらにこの記憶ユニットには、第２のプログラムファンクションの実行時に用いられる複数のファンクションユニットに対する個別パフォーマンス値と、規定されている総パフォーマンス値との間の、第２の依存関係が記録される、または記録されている。
・算出ユニット。この算出ユニットは、第１のプログラムファンクションにおける複数のファンクションユニットの現時点の第１の個別パフォーマンス値を求める。さらにこの算出ユニットは、第２のプログラムファンクションにおける複数のファンクションユニットの現時点の第２の個別パフォーマンス値を求める。
・第２の算出ユニット。この第２の算出ユニットは、求められた第１の個別パフォーマンス値と、記録された第１の依存関係とを、第１の総パフォーマンス値を求めるまたは計算するために用いる。さらにこの第２の算出ユニットは、求められた第２の個別パフォーマンス値と、記録された第２の依存関係とを、第２の総パフォーマンス値を求めるまたは計算するために用いる。
・第３の算出ユニット。この第３の算出ユニットは、第１の総パフォーマンス値と、第２の総パフォーマンス値とから、クラスタパフォーマンス値を求める。
・選択ユニット。この選択ユニットは、クラスタパフォーマンス値を、または、このクラスタパフォーマンス値から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供する目的で、第１のプログラムファンクションおよび第２のプログラムファンクションまたは他のプログラムファンクションを選択するために用いる。
【０００６】
さらに本発明は、特に上述の方法を実施するための装置にも関する。この装置には、以下のユニットが設けられている。すなわち、
・記憶ユニット。この記憶ユニットには、１つのプログラムファンクションの実行時に用いられるファンクションユニット（集合体／ネットワークノード）に対する個別パフォーマンス値と、多重にインプリメントされたファンクションに対して規定されている総パフォーマンス値との間の、依存関係が記録される、または記録されている。
・現時点の個別パフォーマンス値を求める算出ユニット。
・別の算出ユニットまたは計算ユニット。このユニットは、求められた個別パフォーマンス値と、記録された依存関係とを、総パフォーマンス値を求めるまたは計算するために用いる。
・選択ユニット。この選択ユニットは、現時点の総パフォーマンス値を、または、この総パフォーマンス値から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供する目的で、上述のプログラムファンクションまたは他のプログラムファンクションを選択するために用いられる。
【０００７】
本発明はさらに、上述の装置のうちの１つを備えた車両または船舶または航空機に関する。
【０００８】
本発明が改善すべき課題は、多重にインプリメントされたファンクションを提供するために、複数のプログラムファンクションを選択する簡単な方法、もしくは多重にインプリメントされたファンクションを提供するために１つのプログラムファンクションを選択する方法を呈示することであり、これらの方法を特に簡単に拡張できるようにすることである。さらにこれらの方法に対応する装置および対応する車両、船舶もしくは航空機も呈示したい。
【０００９】
方法に関する課題は、請求項１もしくは２記載の方法によって解決される。従属請求項には実施形態が記載されている。これらの方法に対応する装置もしくは対応する輸送手段に関する課題は、各独立請求項の構成によって解決される。
【００１０】
特に車両または船舶または航空機において、多重にインプリメントされたファンクションを提供するために複数のプログラムファンクションを選択する方法に対し、以下を適用することができる。すなわち、
・以下ではプログラムファンクションもしくはファンクションのファンクションユニットとも称する、第１のプログラムファンクションの実行時に用いられるファンクションユニットに対する個別パフォーマンス値と、多重にインプリメントされた複数のファンクションに対して規定されている総パフォーマンス値との間の、第１の依存関係が記録される、または記録されている。
・第２のプログラムファンクションの実行時に用いられるファンクションユニットに対する個別パフォーマンス値と、規定されている総パフォーマンス値との間の、第２の依存関係が記録される、または記録されている。
・第１のプログラムファンクションにおける複数のファンクションユニットの現時点の第１の個別パフォーマンス値が求められる。
・第２のプログラムファンクションにおける複数のファンクションユニットの現時点の第２の個別パフォーマンス値が求められる。
・求められた第１の個別パフォーマンス値と、記録された第１の依存関係とが、第１の総パフォーマンス値を求めるまたは計算するために用いられる。
・求められた第２の個別パフォーマンス値と、記録された第２の依存関係とが、第２の総パフォーマンス値を求めるまたは計算するために用いられる。
・第１の総パフォーマンス値と、第２の総パフォーマンス値とから、クラスタパフォーマンス値が求められる。
・クラスタパフォーマンス値が、または、このクラスタパフォーマンス値から求められたまたは計算された少なくとも１つの値が、多重にインプリメントされたファンクションを提供する目的で、上述のプログラムファンクションまたは他のプログラムファンクションを選択するために用いられる。
【００１１】
したがって、クラスタには複数のファンクションが含まれている。クラスタリングの行われない方法の実施に対し、クラスタリングを行うことによって、計算の手間が著しく低減され、それによって計算時間が節約される。このため本発明による方法を、それがたとえ複数のファンクションに係わるものであるとしても、５０ｍｓよりも短い時間内に周期的に実施することができる。
【００１２】
特に車両または船舶または航空機において、多重にインプリメントされたファンクションを提供するために１つのプログラムファンクションを選択する、択一的な方法によれば、以下のことが可能である。すなわち、
・上記のプログラムファンクションの実行時に用いられるファンクションユニット（集合体／ネットワークノード）に対する個別パフォーマンス値と、多重にインプリメントされたファンクションに対して規定されている総パフォーマンス値との間の、依存関係が記録される、または記録されている。
・複数のファンクションユニット（ファンクションもしくはプログラムファンクション）の現時点の個別パフォーマンス値が求められる。
・求められた個別パフォーマンス値と、記録された依存関係とが、（ファンクションもしくはプログラムファンクションの）ファンクションユニットに対する総パフォーマンス値を求めるまたは計算するために用いられる。
・総パフォーマンス値を、または、この総パフォーマンス値から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供する目的で、上述のプログラムファンクションもしくはファンクションを選択するために、または他のプログラムファンクションもしくは他のファンクションを選択するために、用いることができる。
【００１３】
このようにすれば、本発明による方法をたとえばクラスタリングを行うことなく実施することもできる。
【００１４】
したがってこれら両方の選択肢において、多重にインプリメントされたファンクションが冗長的に提供される。依存関係を行列として記録してもよいし、または別の態様で記録してもよい。
【００１５】
総パフォーマンス値をｙとして表すことができ、有利にはこの値はスカラー量であり、これは他のスカラー量との単純な比較に特に適したものである。
【００１６】
つまり上述のステップを通して、特に簡単な手法で総パフォーマンス値を求めることができる。この総パフォーマンス値によって、特に客観的な判定基準に基づき、マスタ−サーバント型もしくはマスタ−スレーブ型の開ループ制御または閉ループ制御において、現時点で優先的に使用すべきファンクションユニットを選択することができる。特に、それぞれ異なる多数の判定基準を、選択の際に考慮することができる。このようにすれば、たとえば短期間の障害または持続的な障害に起因して、他のユニットよりもひどく損なわれたもしくは劣化したユニットを、間接的に取り除くことができる。
【００１７】
プログラムファンクションは、第１のデータ処理装置のプロセッサによって実行される命令を含むことができる。プログラムファンクションは、以下のようにも定義される。すなわちプログラムファンクションは、たとえば単独でまたは他のプログラムファンクションと共働させて、マスタ−スレーブファンクションを適用可能なユニットである。
【００１８】
依存関係を行列として記録してもよい。したがってこの場合、行列の行を総パフォーマンス値に割り当てることができ、行列の列を個別パフォーマンス値に割り当てることができる。別の選択肢として、行列の列を総パフォーマンス値に割り当てることができ、行列の行を個別パフォーマンス値に割り当てることができ、または割り当てておくことができる。行列配置は、とても見やすい表示形態である。しかも行列を用いた計算は、たとえばマイクロプロセッサ、マイクロコントローラにおいて、またはプログラムのプログラム命令を実行するプロセッサもしくはコントローラを含まない計算ユニットにおいて、簡単な手法で実装することができる。
【００１９】
行列はたとえば、互いに異なる２つの値だけを含むことができ、特に値０と１だけを含むことができ、これによって計算がさらに単純になり加速される。
【００２０】
少なくとも１つの総パフォーマンス値のために、行列の少なくとも２つの行または行列の少なくとも２つの列を設けることができる。このようにすれば、複数の行においてＯＲ結合を簡単に表現することができる。別の選択肢として、またはこれに加えて、該当する総パフォーマンス値を決定づけるファンクションユニットの状態も考慮することができ、つまり特に、そのようなファンクションユニットに対する状態値の順列を考慮することができる。
【００２１】
この場合、ファンクションユニットの複数のクラスを規定することができ、それらのファンクションユニットの個別パフォーマンス値は、クラス固有の意味を有する。ファンクションにおける少なくとも２つのファンクションユニットを、同じクラスに所属させることができる。別の選択肢として、またはこれに加えて、ファンクションにおける少なくとも２つのファンクションユニットが、互いに異なるクラスに所属するようにしてもよい。
【００２２】
これらのクラスを、以下の冗長性フィーチャのうち少なくとも１つ、または少なくとも２つ、またはすべてに基づいて、規定することができ、または規定しておくことができる。すなわち、
・１つのファンクションユニットの冗長性なし、または多重に設けられたファンクションユニットによる冗長性あり。つまりこの１つのファンクションに対し１つのファンクションユニットだけしか存在しない。
・１つのファンクションユニットに関して値冗長性なし、または値冗長性あり。たとえば複数の値が何回も求められ何回も伝送される、および／または、互いに冗長構成を成す複数のセンサが使用される。
・通信冗長性なし、特に通信リンク冗長性なし、または多重通信による冗長性あり。特に通信リンク冗長性あり。
【００２３】
複数の伝送リンク、二重化された伝送パケットまたはメッセージがあれば、通信冗長性を生じさせることができる。
【００２４】
また、クラスをこのように規定することによって特に、システムの簡単な拡張性が得られる。新たなファンクションユニットを、すでに規定されているクラスに分類することができる。このようにすることで、ファンクション／アプリケーションを、ファンクションユニット（集合体／ネットワークノード）により、たとえばプラグ＆プレイコンセプトによって、つまり単にプラグインするだけで、あとから拡張することができる。また、既存のシステマティックに基づき、あるクラスをすでに規定した後、そのクラスに属するファンクションユニットをファンクションに挿入することができる。
【００２５】
ファンクションに関する総パフォーマンス値を、複数のファンクションユニットまたはすべてのファンクションユニットに対し同じ基準で、規定することができ、または規定しておくことができる。この場合、以下の判定基準のうち少なくとも１つの判定基準を考慮することができる。すなわち、
・乗員および／または貨物の損傷という点でのエラーの影響、
・メンテナンスタスクまたはメンテナンスインターバルの不足、ならびに、
・ドライビングまたはドライビングタスクまたはフライトの中断。
【００２６】
このようにすることで、輸送手段の使用に関して非常に重要であり、ひいてはファンクションユニットの機能性も良好に表す判定基準を考慮することができる。車両の場合、メンテナンスタスクはたとえば５００００ｋｍを超える可能性がある。さらに車両の場合、ドライビングタスクはたとえば４時間を超えることもある。
【００２７】
このような総パフォーマンス値の規定によって、やはり特にシステムの簡単な拡張性が得られるようになる。新たに開発されたファンクションユニットを、あとからファンクションに挿入することができ、もしくはプログラムファンクションによってあとから使用することができ、これをたとえばプラグ＆プレイコンセプトによって、すなわち単にプラグインするだけで行うことができ、その場合、それらのファンクションユニットに対しても、以前に規定されていた総パフォーマンス値が適用される。このことは、輸送手段へのファンクションユニットの追加装備にも当てはまる。
【００２８】
現時点の個別パフォーマンス値を、行列またはベクトルに記録することができる。したがってこの場合も、多数の値が見やすい形態で記録されるようになる。現時点の総パフォーマンス値を高速に計算するためにも、行列もしくはベクトルは特に適している。行列またはベクトルが、互いに異なる２つの値だけしか含まないようにすることができ、特に値０と１だけしか含まないようにすることができる。これによって行列またはベクトルを用いた演算を、さらに加速することができる。
【００２９】
総パフォーマンス値を、２つの行列の乗算すなわち依存関係行列と個別パフォーマンス値行列との乗算によって求めることができ、または、行列すなわち依存関係行列と個別パフォーマンス値を含むベクトルとの乗算によって求めることができる。乗算の順序によっては、乗算を行うにあたりたとえば、依存行列の転置または個別パフォーマンス値行列の転置、もしくは転置ベクトルを用いてもよい。「転置」とは、行列において要素の現在の行と列とを入れ替えることである。存在するファンクションユニットよりも大きい行列に対し、行列乗算（ベクトル乗算を含む）を実行することができ、これによってシステムの簡単な拡張性が保証される。
【００３０】
現時点の総パフォーマンス値を、計算ファンクションを用いて求めることができる。この計算ファンクションは、ファンクションもしくはプログラムファンクションのファンクションユニットの個数よりも小さい値またはこの個数とは異なる値に対しては、第１の値となるよう、特に０となるよう定義されており、この個数と等しい値に対しては、第１の値とは異なる第２の値となるよう、特に値１となるよう、定義されている。このファンクションをたとえば、ｘ軸上でシフトするステップ関数とすることができ、この関数は場合によっては、シフトされたシグモイド関数と呼ばれることもある。ファンクションにおけるファンクションユニットの個数よりも大きい値を、たとえば発生しないようにすることができるので、それらの値を定義する必要もない。このような計算ファンクションを用いることによって、行列乗算において発生しファンクションにおけるファンクションユニットの個数よりも小さい値を、やはり値１もしくは０に戻すことができる。ファンクションにおけるファンクションユニットの個数と一致する値を、たとえば値１にセットすることができる。これにより、たとえば１つの要素だけに値１が含まれているベクトルと、スカラー値とを乗算すれば、スカラー値の総パフォーマンス値を簡単に求めることができるようになる。
【００３１】
このように、総パフォーマンス値を求めるために、記録された依存関係に従って総パフォーマンス値が記録されているベクトルを用いることができる。有利には、このベクトルと、上述の計算ファンクションを適用して求められたベクトルまたは行列とが乗算される。この場合、数学的に閉じた表現ないしは数学的に自己完結した表現が生成され、それによって特に技術的な認証が容易になる。
【００３２】
両方の選択肢によれば、本発明による方法を周期的に実行することができ、有利には５０ｍｓよりも短い周期時間で実行することができる。
【００３３】
少なくとも１つのファンクションユニットをネットワークノードとすることができ、特に以下のものとすることができる。すなわち、
・制御エレクトロニクスを備えたステアリングコントロールユニット、または、
・場合によってはインバータおよび／または制御エレクトロニクスを備えた車輪ハブ原動機、または、
・アクセルペダル値を読み取って伝送するタスクを担うネットワークノード、
・右後輪、同様に左後輪または他の個所の車輪における駆動原動機を備えたネットワークノード、または、
・アクセルペダルセンサ値から、駆動されている右後輪および左後輪または他の個所における車輪を制御するための目標設定値を求めるタスクを担うプログラムファンクション。
【００３４】
ネットワークノードを、データ伝送ネットワークの構成部分とすることができ、特にデータパケットを伝送するデータ伝送ネットワーク、たとえばLAN（Local Area Network）／EthernetまたはWLAN（ワイヤレスLAN）の構成部分とすることができる。
【００３５】
少なくとも１つのファンクションユニットを、プログラムファンクション自体によって実現することができ、たとえばファンクション「ドライビング」"Fahren"のためのプログラムによって実現することができる。ファンクションユニットのレベルにおいてプログラムファンクションはたとえば、データを供給できるか（ランニング状態Running）または実行不可能であるか（アイソレーション状態Isolated）、に関してのみ考察され、その際、特に、データが正しいか否かについては考慮されない。
【００３６】
車両の「ドライビング」"Fahren"のためのファンクションを設けることができる。ドライビングのためのファンクションは、以下のファンクションユニットのうちの少なくとも１つを含むことができる。すなわち、
・アクセルペダル"Fahrpedal"に関するファンクション、
・少なくとも１つまたは少なくとも２つまたは少なくとも４つの、車輪"Rad"に関するファンクション、これらは特に駆動原動機"Antriebsmotor"に関するファンクションをそれぞれ含む、
・ドライビングに関するプログラム、
のうちの少なくとも１つを含むことができる。
【００３７】
別の選択肢として、またはこれに加えて、ブレーキング"Bremsen"のためのファンクションを設けることができる。ブレーキングのためのファンクションは、以下のファンクションユニットのうちの少なくとも１つを含むことができる。すなわち、
・ブレーキペダルにおける運転者のブレーキング要求を読み取るユニット、
・ブレーキハイドロリクスを制御するユニット、
・有利には少なくとも２つのユニットであって、ブレーキングにも使用可能である電気的に駆動される車輪、たとえば右後輪および左後輪、
・運転者が要求するブレーキング命令を、車輪たとえば右後輪または有利には左後輪のための、さらにハイドロリックブレーキを制御するネットワークノードのための、目標ブレーキング設定に変換するタスクを担うプログラムファンクション、
のうちの少なくとも１つを含むことができる。
【００３８】
別の選択肢として、またはこれに加えて、ステアリングのためのファンクションを設けることができる。ステアリングのためのファンクションは、以下のファンクションユニットのうちの少なくとも１つを含むことができる。すなわち、
・ステアリングコントローラの制御および実際ステアリングポジションの出力、
・ステアリングホイールにおける目標ステアリング角の評価、
・プログラムファンクションであるコントローラ設定＝ｆ（実際ステアリング角、目標ステアリング角）、
のうちの少なくとも１つを含むことができる。
【００３９】
支援機能のためのファンクションを、ＡＢＳ（アンチロックシステム）、ＥＳＰ（エレクトロニックスタビリティシステム）またはフルオートマチックドライビングに関するものとすることができる。この場合、ここで挙げた支援機能のうちの１つまたは２つ、またはすべての支援機能を設けることができる。
【００４０】
同様に航空機であれば、以下のプロセスのためのファンクションを設けることができる。すなわち、地上走行（タキシング）、離陸、浮揚、上昇、巡航、降下、進入、着陸、停止までの地上走行。
【００４１】
クラスタパフォーマンス値を、複数のファンクションまたはすべてのファンクションに対し同じ基準で、規定することができ、または規定しておくことができる。このような措置によって、ファンクションのレベルにおいても簡単な拡張性を実現することができ、および／または、システム設計にあたり高度なフレキシビリティを実現することができる。
【００４２】
有利には、以下のクラスのうちの少なくとも１つ、または少なくとも２つ、またはすべてを考慮することができる。すなわち、
・最も重要な１つのファンクション、または最も重要な複数のファンクション、
・２番目に重要な１つのファンクション、または２番目に重要な複数のファンクション、
・重要度の低い１つのファンクション、または重要度の低い複数のファンクション。
【００４３】
このようなシンプルなクラス分けによって、システム全体に対するそれらの重要性に従い、および／または、たとえば人の健康もしくは輸送すべき有価物の危険に対する重要性に従い、ファンクションの重み付けを実現することができる。
【００４４】
さらにたとえば、複数のファンクションユニットに対する総パフォーマンス値に関しても、もしくは１つのアプリケーション／ファンクション／プログラムファンクションに対する総パフォーマンス値に関しても、クラスタパフォーマンス値の場合には、以下の判定基準のうちの少なくとも１つ、または少なくとも２つ、またはすべてを関連させることができる。すなわち、
・乗員および／または貨物の損傷という点でのエラーの影響、
・メンテナンスタスクまたはメンテナンスインターバルの不足、
・ドライビングまたはドライビングタスクまたはフライトの中断。
【００４５】
このような手法により（包括的に）すなわち複数のファンクションに対して規定することによって、この場合にも、さらに別のファンクションをシステムに簡単に挿入することが保証される。
【００４６】
１つのクラスタにおける複数のファンクションもしくはプログラムファンクションに対するクラスタリングパフォーマンス値を、たとえばクエリを介して求めることができ、特にIF THENクエリまたはCASEクエリ（ケース依存性）を介して求めることができる。この種のクエリは、広く普及している多くのプログラム言語に用意されている。クラスタを用いれば、リアルタイムアプリケーションにおいて貴重な計算時間を節約することができる。さらに、いわゆるWORST()ファンクションを用いることもでき、このファンクションによれば、現時点で最悪のパフォーマンス値が求められる。
【００４７】
特に上述の方法の実施に適した装置は、以下を含むことができる。すなわち、
・記憶ユニット。この記憶ユニットには、第１のプログラムファンクションの実行時に用いられる複数のファンクションユニットに対する個別パフォーマンス値と、多重にインプリメントされた複数のファンクションに対して規定されている総パフォーマンス値との間の、第１の依存関係が記録される、または記録されている。さらにこの記憶ユニットには、第２のプログラムファンクションの実行時に用いられる複数のファンクションユニットに対する個別パフォーマンス値と、規定されている総パフォーマンス値との間の、第２の依存関係が記録される、または記録されている。
・算出ユニット。この算出ユニットは、第１のプログラムファンクションにおける複数のファンクションユニットの現時点の第１の個別パフォーマンス値と、第２のプログラムファンクションにおける複数のファンクションユニットの現時点の第２の個別パフォーマンス値とを求める。
・第２の算出ユニット。この第２の算出ユニットは、求められた第１の個別パフォーマンス値と、記録された第１の依存関係とを、第１の総パフォーマンス値を求めるまたは計算するために用いる。さらにこの第２の算出ユニットは、求められた第２の個別パフォーマンス値と、記録された第２の依存関係とを、第２の総パフォーマンス値を求めるまたは計算するために用いる。
・第３の算出ユニット。この第３の算出ユニットは、第１の総パフォーマンス値と、第２の総パフォーマンス値とから、クラスタパフォーマンス値を求める。
・選択ユニット。この選択ユニットは、クラスタパフォーマンス値を、または、このクラスタパフォーマンス値から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供する目的で、第１のプログラムファンクションおよび第２のプログラムファンクションまたは他のプログラムファンクションを選択するために用いる。
【００４８】
複数またはすべてのファンクションに対するクラスタパフォーマンス値を、またはこのクラスタパフォーマンス値から計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供する目的で、すなわちマスタとスレーブを切り替える目的で、もしくはパフォーマンス向上のために冗長的に構成されている一方のクラスタをアクティブにする目的で、そのクラスタのプログラムファンクションまたは他のクラスタの他のプログラムファンクションを選択するために、用いることができる。
【００４９】
よって、本発明による方法に関して挙げた技術的な効果は、この装置および対応するその実施形態についても当てはまる。特にクラスタリングによって、計算時間の節約が達成される。
【００５０】
さらに、特に上述の方法の実施に適した装置は、以下を含むことができる。すなわち、
・記憶ユニット。この記憶ユニットには、１つのプログラムファンクションの実行時に用いられるファンクションユニットに対する個別パフォーマンス値と、多重にインプリメントされたファンクションに対して規定されている総パフォーマンス値との間の、依存関係が記録される、または記録されている。
・算出ユニット。この算出ユニットは、（ファンクションもしくはプログラムファンクションの）ファンクションユニットの現時点の個別パフォーマンス値を求める。
・別の算出ユニットまたは計算ユニット。このユニットは、求められた個別パフォーマンス値と、記録された依存関係とを、（ファクションもしくはプログラムファンクションに対する）、特に現時点の、総パフォーマンス値を求めるまたは計算するために用いる。
・選択ユニット。この選択ユニットは、現時点の総パフォーマンス値を、または、この総パフォーマンス値から求められたまたは計算された少なくとも１つの値を、多重にインプリメントされたファンクションを提供する目的で、上述のプログラムファンクションを選択するために、または他のプログラムファンクションを選択するために、用いられる。
【００５１】
よって、本発明による方法に関して挙げた技術的な効果は、この装置および対応するその実施形態についても当てはまる。
【００５２】
さらに車両、船舶、または航空機に、このような装置を装備させることができる。この場合、上述の技術的な効果が同様に当てはまる。冗長性およびそれに関連する方法すなわちファンクションユニットの性能もしくは障害を求める方法は、特に上述の輸送手段の自律制御を行う場合に効果を発揮する。なぜならばその場合、人と貨物に対する危険を最小限に抑えるためには、技術的なコストが正当化されるからである。
【００５３】
車両を電気車両、内燃機関車両、またはこれら両方の駆動形態によるハイブリッド車両とすることができる。この場合、人員を輸送するための自動車、バス、または貨物車両または他の有用車両とすることができる。ただし車両と航空機のほか、この装置をボートまたは船舶に設けてもよい。
【００５４】
別の表現をすれば、ファンクション品質を評価するための方法が呈示される。フォールトトレラントシステムの基本的な問題は、分散型ネットワークに冗長構成が設けられているにもかかわらず、アクチュエータもしくは作動機構の制御において一義性を保証することである。
【００５５】
その際、２チャネルまたは３チャネル以上のフォールトトレラント制御システムをベースとすることができる。１つのチャネルのマスタ−スレーブ（サーバント）属性を介して、上述の一義性が形成される。
【００５６】
マスタ−スレーブ方式は、存在する２つのチャネルのうち一方のチャネルを、マスタとして一義的に選択する。マスタチャネルだけがアクチュエータ機構を制御し、これに基づきそのアクチュエータ機構に対し一義的な制御が保証される。
【００５７】
マスタ−スレーブ方式のベースを、各チャネルのパフォーマンスを評価するメトリクスと、各チャネル相互間のパフォーマンスの比較とすることができる。特にここでは、まさにこのようなファンクションパフォーマンスを求めるためのメトリクスおよび方法について説明する。ファンクションに依存しない評価スケールたとえば０〜９もしくは０〜１０を、メトリクスとして提案することができる。これを任意に拡張または縮小することができるが、ただしこれによっても、チャネルのファンクションパフォーマンスを計算するための方法論に関しては、何も変わらない。
【００５８】
本発明による方法を、以下のタスクを担う複数の伝達関数の集合によって構成することができる。すなわち、
１）センサ機構／アクチュエータ機構に関するエラー識別子を、ファンクション特有ではない汎用的なデグラデーションレベルすなわち個別パフォーマンス値に変換。
２）センサ機構／アクチュエータ機構のファンクション特有ではないデグラデーションレベルを、依存関係行列すなわち１つ（または複数）の総パフォーマンス値に基づき１つのパフォーマンスレベルごとに、１つのチャネルのすべての個別ファンクションのパフォーマンスレベルに変換。
３）オプションとしてクラスタを用いた場合、１つのチャネルの個別ファンクションのパフォーマンスレベルをそのチャネルのクラスタパフォーマンスレベルに変換。
【００５９】
この方法の目的を最終的には、１つのチャネルのクラスタパフォーマンスレベルまたは総パフォーマンスレベルを求めて、マスタ／スレーブメカニズムに渡すこと、とすることができる。
【００６０】
マスタ−スレーブ方式は、かなり以前から知られている。特に、航空機のプライマリ飛行制御システムおよびセカンダリ飛行制御システムは、これが駆使される適用分野を成している。
【００６１】
自動車業界においてマスタ−スレーブ方式を適用した例もあり、それらは以下のとおりである。すなわち、
［１］Armbruster, Lehmann, Reichel, Zimmer, Tjaden, Ostertag, Werner著、"X-by-Wire platform design-approach; Functionality, Safety and Design", European Automotive Safety フランクフルト、２００７年。
［２］Michael Armbruster著、"Eine fahrzeuguebergreifende X-by-Wire Plattform zur Ausfuehrung umfassender Fahr- und Assistenzfunktionen"（広範囲に及ぶ走行機能および支援機能を実施するための、車両全体にわたるX-by-Wireプラットフォーム）、シュトゥットガルト大学航空システム研究所、２００９年、論文。
【００６２】
文献［１］には、プライオリティベースのマスタ−スレーブメカニズムの原理が開示されているが、まさにそのプライオリティを求めるために、ファンクション特有ではないもしくは汎用的な方法論は開示されていない。
【００６３】
マスタ−スレーブ方式自体はさして複雑なものではないという理由から、ここで前提としているのは、チャネルのパフォーマンスを求める方法は原則的に、対応するシステム供給者には知られているが、そこにメカニズムのトリックがあるので、それらの方法は公開されない、ということである。ここで示す方法はたとえば、ファンクションパフォーマンスの評価を抽象化する、という点で、本来のファンクションとは、以下のレベルのいずれであれ、異なっている。すなわち、
・ネットワークノードのレベル、たとえばステアリングエレクトロニクス、ブレーキングエレクトロニクス、ビデオコントローラのレベル、
・個別ファンクションのレベル、たとえばステアリング、ドライビング、ブレーキング等のレベル、または、
・ファンクションクラスタのレベル、ただし１つのファンクションクラスタは複数の個別ファンクションを統合することができる。これによってマスタ−スレーブ方式を、１つの個別ファンクションに対してではなく、複数のファンクションから成るクラスタに対して、適用することができる。このことで最終的には、計算コストが節約される。ただしこの方法を、個別ファンクションに適用することもできる。
【００６４】
たとえばこのようなアプローチが必要とされるのは、拡張可能なシステムにおいて対応するパフォーマンスレベルの計算を使用できるようにするためであり、たとえばキーワードはsafe Plug’ n Playである。
【００６５】
上述のように本発明による方法を、以下のタスクを担う複数の伝達関数の集合によって構成することができる。すなわち、
・ステップ１：センサ機構／アクチュエータ機構に関するエラー識別子を、ファンクション特有ではない汎用的なデグラデーションレベルに変換する。
・ステップ２：センサ機構／アクチュエータ機構のファンクション特有ではないデグラデーションレベルを、依存関係行列に基づき１つのパフォーマンスレベルごとに、１つのチャネルのすべての個別ファンクションのパフォーマンスレベルに変換する。
・ステップ３（オプション）：１つのチャネルの個別ファンクションのパフォーマンスレベルを、そのチャネルの総パフォーマンスレベルに変換する。
【００６６】
次に、これらのステップについて詳述する。
【００６７】
ステップ１：ユニット／ネットワークノードのファンクション特有ではない汎用的なデグラデーションレベル
エラー識別はたとえば、入力データストリームに適用される公知の標準エラー識別メカニズムに基づく。考えられる中心的なエラーインジケータは、たとえば以下のとおりである。すなわち、
・データが受信されない、
・誤ったＣＲＣ（巡回冗長符号）、
・値範囲内ではない値、
・冗長データの不一致、
・妥当でないデータ、これはたとえばモデルとの比較に基づき識別される。
【００６８】
図３は、これまでたとえば１１個のタイプにネットワークノードが分類されている様子を、テーブル１として示している。図３には、ユニット／ネットワークノードもしくはファンクションユニットのパフォーマンスの抽象化が示されている。各タイプは、明確に定義されたデグラデーションレベルの集合を有することができ、それらのデグラデーションレベルが、後続のパフォーマンス計算において相応に考慮される。この場合、１１個のデグラデーションレベルよりも多いまたは少ないデグラデーションレベルを用いてもよい。ここで決定的であるのは、クラスの個数ではなく、クラスの形成（ここでは１１個）それ自体と、クラスごとに制限された個数のデグラデーションレベルである。
【００６９】
ユニットタイプの場合、たとえば以下の順序で以下の点が異なっている。すなわち、
・冗長性それ自体、
・値冗長性、および、
・通信リンク冗長性。
【００７０】
つまり"simplex/single/single-link"が意味するのは、該当するユニットもしくは対応するファンクションユニットが冗長的には設計されておらず、かつ値冗長性がなく、かつ単一の通信リンクでありつまりやはり冗長性がない、ということである。
【００７１】
たとえば、アプリケーションとファンクションとの間には相違点はないが、ただしファンクションはプログラムファンクションとは、以下の点で異なっている場合がある。すなわちファンクションは輸送手段（車両）全体にわたって分散されており、プログラムファンクションは１つの制御装置たとえばＥＣＵ（Electronic Control Unit電子制御ユニット）内に実装されており、これはたとえばソフトウェアプログラムとして、またはプログラムを実行するプロセッサのない回路として実装されている。
【００７２】
クラスタは、１つの論理的な抽象化レベルである。
【００７３】
アプリケーションは、ネットワークノードにおいて実行される。１つのユニットは１つのネットワークノードである。この場合、プログラムファンクションのパフォーマンスレベルが計算され、それらのプログラムファンクションは、それぞれ異なるネットワークノードにおいて冗長的に実行され、データを他のネットワークノードから受け取り、さらに別のネットワークノードへデータを再び送信する。
【００７４】
ステップ２：個別ファンクションのパフォーマンスレベル
【００７５】
タスク：アプリケーションソフトウェアコンポーネントであるステアリング、ブレーキングおよびドライビングのパフォーマンスレベルを、ユニットのデグラデーションレベルに基づき計算することができる。１つのユニットを先行のセクションの１つのタイプに、一義的に割り当てることができる。したがってこれに基づき各ユニットごとに、明確に定義されたデグラデーションレベルから成る固有の集合を生成することができる。
【００７６】
最終的に目標とすることができるのは、１つのアプリケーションソフトウェアコンポーネントのパフォーマンスレベルと、ユニットのデグラデーションレベルとの関係を、コンパクトかつシステマティックにかつ機械が理解できるように記述することである。別の抽象化として、複数のアプリケーションＳＷ（ソフトウェア）コンポーネントのパフォーマンスレベルを、１つのクラスタパフォーマンス値にまとめることができる。ただしこのような間接的な手法はオプションであって、最終的には、グループとして複数のアプリケーションＳＷコンポーネントの共通のマスタ／スレーブ切り替えを実現することができ、これによってたとえば貴重な計算時間を節約することができる。
【００７７】
以下では、このことを行列によってどのようにして記述することができるのかについて、１つのアプローチを示す。このために以下を定義する。すなわち、
【数１】
0006377168.tif 000002
【００７８】
これに関連して以下が成り立つ。すなわち、
【数２】
0006377168.tif 000003
ただしsgnAppMaは、図１４を参照しながら説明するファンクションである。
【００７９】
この例において、この関係について以下で説明することにする。
【００８０】
ステップａ）  依存関係行列Ａの作成
【００８１】
最初に、たとえばファンクション「ドライビング」に対して、図４に示したテーブル２が適用される。このテーブルにおいて用いられているシンボルは、論理式において以下の意味を有する。すなわち、
・"-"は影響なし、すなわち対応する値はこの個所では考慮されない、
・"&"はＡＮＤ結合、さらに、
・"|"はＯＲ結合。
【００８２】
ステップａ）において、図４に示されたコンフィギュレーションフィールド（テーブル２）が&依存関係だけしか含まないようになるまで、この行列はさらに詳細に定義される。その結果、図５（テーブル３）による行列が得られるようになる。つまり、すべての順列を明示的に記述することができる。
【００８３】
たとえば、ファンクション「ドライビング」に対する依存関係行列Ａもしくは
【数３】
0006377168.tif 000004
は、テーブル４に示されているようになる。図６を参照。依存関係行列Ａには値０と１だけしか含まれていないので、これをバイナリマッピングとすることができる。ＯＲ結合"I"と、該当するパフォーマンスレベルに対し何の影響も及ぼさないユニットもしくはそれらのユニットのデグラデーションレベルに対するシンボル"X"とを除去することによって、バイナリマッピングが実現される。
【００８４】
パフォーマンス値を求めるために、図８もしくはテーブル５に示したルールセットを適用することができる。このルールセットを、アプリケーションに依存することなく、たとえば以下のアプリケーションに適用することができる。すなわち、
・ドライビング、および／または、
・ブレーキング、および／または、
・ステアリング、および／または、
・支援：たとえばＡＢＳ（アンチロックシステム）および／またはＥＳＰ（エレクトロニックスタビリティプログラム）および／またはフルオートマチックドライビング。
【００８５】
ステップｂ）  デグラデーション行列の導出
【００８６】
周期的に、たとえば５０ｍｓよりも短い、または１０ｍｓよりも短い、または５ｍｓよりも短いインターバルで、ＲＴＥ（Run Time Environmentランタイム環境）において計算されたユニットのデグラデーションレベルから、デグラデーション行列Ｘを作成することができる。たとえばここで前提となり得るのは、ユニットの各デグラデーションレベルごとに、たとえば値０と１を有することのできる別個の変数を用いる、ということである。
【００８７】
デグラデーション行列Ｘもしくは
【数４】
0006377168.tif 000005
の列は、依存関係行列の決定に関連するユニットのデグラデーションレベルを表している。図５には、列の意味が例示されており、枠内に説明されている。図１０には、デグラデーション行列Ｘの一部分が示されている。デグラデーション行列Ｘもしくは
【数５】
0006377168.tif 000006
において、仮想的なユニットのデグラデーションレベルを表すためにソフトウェア（ＳＷ）で利用可能な変数は、たとえば以下のように表される。すなわち、
Var (degLevel (i) ) . virtAgg(k)                                    式（２）
これらのデグラデーションはたとえば、構造体AggregateStatus_tにおける型attribute_performanceLevel_tの変数degradationLevelから得られる。
【００８８】
この場合、上述のように規定されたユニットクラスについて、変数degradationLevelの１０進数値と対応するDegLevelとの間の対応関係が得られ、これはテーブル６もしくは図９に示されており、ここで"X"は例えば値"1"に対応し、"-"は値"0"に対応する。
【００８９】
ユニットを、ＲＴＥ（Run Time Environmentランタイム環境）においてコンフィギュレーションすることができる。１つのアプリケーション（ｉ）の入出力データ各々を、正確に１つのユニットに割り当てることができる。
【００９０】
例を挙げると、図１０においてデグラデーション行列Ｘの一部分について示されているような、ファンクション「ドライビング」"Fahren"に対するデグラデーション行列Ｘが得られる。図示されていない列は、以下の内容で占められている。すなわち、
・VirtAgg_Rad_HL, Deg0, Deg1 - single link, DegN ->
var (degLevel0 ).virtAgg(Rad_HL),
var (degLevel1).virtAgg(Rad_HL)もしくは
var (degLevelN).virtAgg(Rad_HL),
・VirtAgg_Rad_HR, Deg0, DegN - single link, DegN ->
var (degLevel0 ).virtAgg(Rad_HR),
var (degLevel1).virtAgg(Rad_HR)もしくは
var (degLevelN).virtAgg(Rad_HR),
・オプション、中央の駆動原動機"Antriebsmotor"の場合：
VirtAgg_Antriebsmotor, Deg0, DegN - 使用不可 -> var (degLevel0 ).virtAgg(Antriebsmotor),
var (degLevelN).virtAgg(Antriebsmotor),
・アプリケーション「ドライビング」Applikation "Fahren", Deg0 (Running), DegN (Isolated) ->
var (degLevel0).virtAgg(Applikation_Fahren),
var (degLevelN).virtAgg((Applikation_Fahren).
ここでは、デグラデーション行列Ｘの各列には、値１または値０しか存在することができない、ということが適用される。これについては、図１２および図１３を参照しながら、あとでさらに詳しく説明する。
【００９１】
ステップｃ）  パフォーマンスベクトルの抽出
【００９２】
第３のステップにおいて、パフォーマンスベクトルｐもしくは
【数６】
0006377168.tif 000007
が、たとえば当初のテーブル４もしくは図６から読み取られる。これについては、図１１（テーブル７）に示されている。
【００９３】
ステップｄ）  補正行列Ｋもしくは
【数７】
0006377168.tif 000008
の導出
【００９４】
【数８】
0006377168.tif 000009
を計算すると、たとえば主対角線の要素だけ、すなわちつまりすべてのCiiだけが着目される行列が発生する。補正行列
【数９】
0006377168.tif 000010
によって保証されるのは、演算
【数１０】
0006377168.tif 000011
の実行後、要素diiが<> 0（０と等しくない）だけの行列が生じることである。つまり以下が成り立つ。すなわち、
【数１１】
0006377168.tif 000012
【００９５】
ステップｅ）  行列Ｄもしくは
【数１２】
0006377168.tif 000013
からベクトルへの変換
【００９６】
有効なパフォーマンス値piが
【数１３】
0006377168.tif 000014
から抽出できるようになる前に、行列
【数１４】
0006377168.tif 000015
をベクトルに移行させることができる。
【数１５】
0006377168.tif 000016
は依然として要素dii <> 0（０と等しくない）だけであることから、たとえば「アイデンティティベクトル」
【数１６】
0006377168.tif 000017
との乗算が充足される。ここで以下が成り立つ。すなわち、
【数１７】
0006377168.tif 000018
その結果、以下のとおりとなる。すなわち、
【数１８】
0006377168.tif 000019
【００９７】
ステップｆ）  考察しているアプリケーション（ｉ）の現時点で有効なパフォーマンス値もしくはパフォーマンスレベル値の抽出
【００９８】
アプリケーション（ｉ）に対し最終的に現時点で生じているパフォーマンスレベルは、結局は以下のとおりとなる。すなわち、
【数１９】
0006377168.tif 000020
この場合、要素d11〜dnnには１つだけ値１が含まれ、他の値はすべて０である。
【００９９】
したがってこの場合、特に、閉じた数学的表現ないしは自己完結型の数学的表現を得る目的で、補正行列Ｋを用いることができる。別の選択肢として、補正行列Ｋは用いられず、したがってステップｅ）およびｆ）を省くことができる。この場合には、要素d11〜dnnを行列Ｃから直接取り出すことができ、たとえば主対角線または１つの行からも取り出すことができる。
【０１００】
ステップ３：ファンクションクラスタ／パーティションのパフォーマンスレベル
【０１０１】
タスク："APPLICLUSTER Performance Calculation"のタスクを、APPLICLUSTERのすべてのアプリケーションソフトウェアコンポーネントのパフォーマンスに基づき、パフォーマンスクラスタＰＣ全体のただ１つのパフォーマンス値を計算すること、とすることができる。
【０１０２】
基礎を成すアプローチ：このチャレンジは、プラグ＆プレイ（ＰｎＰ）というフレームワークにおいて拡張可能な手法を見出すことにあり、その目的は、複数のアプリケーションソフトウェアコンポーネントのパフォーマンスレベルを、APPLICLUSTERのパフォーマンスレベルに伝達することである。
【０１０３】
初回のインプリメントのために、以下のストラテジを遂行することができる。
【０１０４】
テーブル８
【表１】
0006377168.tif 000021
【０１０５】
【表２】
0006377168.tif 000022
【０１０６】
ここでｉとｊは、自然数１，２，３等である。その際、複数の最も重要なアプリケーションおよび／または複数の２番目に重要なアプリケーションを存在させてもよい。
【０１０７】
テーブル８の上述の定義によれば、１つのクラスタにおいて複数のパフォーマンスレベルが該当する可能性もあるので、他のすべての考察に対し最も悪いパフォーマンスレベル（ＰＬ）が用いられ、その他のパフォーマンスレベルは破棄される。つまりこの場合、WORST()ファンクションが適用される。
【０１０８】
１つのパフォーマンスクラスタＰＣのパフォーマンスレベルの決定は、たとえば図１５（テーブル９）に示された原理に従う。この場合、以下のデグラデーション情報を用いることができる。すなわち、
・１つのアプリケーション（ｉ）は、それが実行不可能な場合、またはそのアプリケーションのDL-Appli（Direct-Lawダイレクト・ロー）もしくはＤＬアプリケーションが実行される場合、最大のデグラデーションを有し得る。ＤＬアプリケーションは、本来のいわゆる「ノーマル・ロー」"normal law"アプリケーションが、まさしくそのアプリケーションに対応づけられるべきエラーを引き起こしたケースのための、代替アプリケーションである。ダイレクト・ロー・アプリケーションは、非常にシンプルに実装されており、運転者のためにトレーニングケースを成し得るものであるが、トレーニングされた運転者であればこそ、車両を依然として安全に停止させることができるのに十分なものである。
・「１つのアプリケーション（ｉ）の低減された可用性」は、そのアプリケーションのパフォーマンスがYELLOW4よりも良好であるかまたはそれと同等である、ということを意味し得るものである。
【０１０９】
アプリケーションのためにもクラスタのためにも、パフォーマンスレベルに対して他の規定を用いてもよく、特に異なる個数のパフォーマンスレベルを用いてもよい。
【０１１０】
したがって、ファンクション特有の情報を、ファンクション特有でない汎用的な、つまり同等の情報に抽象化するための、システマティックな方法が記載される。このような抽象化を、評価テーブルと、上述の説明および以下に続く説明による方法／伝達関数によって、構成することができる。以下の説明には、評価テーブルも示されている。
【０１１１】
これまで述べてきた本発明固有の事項、本発明の特徴、利点ならびにその実現手法は、以下の実施例の説明と関連させて、さらにはっきりと明確に理解できるようになる。本願において「できる」という概念が用いられるところでは、技術的に可能であることも、実際に技術的に実現されることも扱われる。また、本願において「ほぼ」という概念が用いられる場合、そのことは、厳密な値も開示されていることを意味する。
【０１１２】
さらに図面は縮尺どおりには描かれておらず、特に各要素のアスペクト比が異なるように選択されている場合もある。
【０１１３】
次に、添付の図面を参照しながら本発明の実施例について説明する。
【図面の簡単な説明】
【０１１４】
【図１】自動車における複数のファンクションユニットもしくは複数の集合体を示す図
【図２】「ドライビング」という用途のための複数のファンクションユニットのうち、互いに冗長構成を成す２つのアプリケーションを示す図
【図３】ユニットもしくはネットワークノードのパフォーマンスもしくは性能に対して規定されたクラスを示す図
【図４】第１の設計段階による依存関係行列Ａを示す図
【図５】第２の設計段階による依存関係行列Ａを示す図
【図６】第３の設計段階による依存関係行列Ａを示す図
【図７】第３の設計段階による依存関係行列Ａの１つのセクションを示す図
【図８】それぞれ複数のユニットもしくはネットワークノードを含む複数のアプリケーションに対するパフォーマンスレベルの規定について示す図
【図９】変数「デグラデーションレベル」の１０進数値と、対応するデグラデーションレベルとの対応関係、さらにこれらとユニットもしくはネットワークノードのクラスとの対応関係を示す図
【図１０】ファンクションもしくはアプリケーション「ドライビング」"Fahren"に対するデグラデーション行列を示す図
【図１１】パフォーマンスベクトルを示す図
【図１２】デグラデーション行列Ｘの１つのセクションと、依存関係行列Ａの１つのセクションとの行列乗算に関する第１の例を示す図
【図１３】デグラデーション行列Ｘの１つのセクションと、依存関係行列Ａの１つのセクションとの行列乗算に関する第２の例を示す図
【図１４】プロダクト行列Ｃの各要素を単純化するファンクションを示す図
【図１５】複数のアプリケーションから成る１つのクラスタのパフォーマンスレベルを求める原理を表すテーブルを示す図
【図１６】ファンクションクラスタのパフォーマンスを求める方法を実施する際の処理ステップを示す図
【０１１５】
図１には、自動車１０における複数のファンクションユニットもしくは複数のユニットないしは集合体が示されている。自動車１０はたとえば自家用車であり、以下を含む。すなわち、
・右前輪ＶＲ
・左前輪ＶＬ
・右後輪ＨＲ
・左後輪ＨＬ
・バッテリ１２および（ハイブリッド）／または燃料タンク１２
・ハンドル１４
・アクセルペダル１６
・２つの制御ユニット１８，１８ｂ
・右後輪ＨＲのための車輪ユニット２０つまりたとえば電動機、インバータ、および／または電子制御装置
・左後輪ＨＬのための車輪ユニット２２つまりたとえば電動機、インバータ、および／または電子制御装置。
【０１１６】
２つの車輪ハブ原動機の代わりに、１つの中央駆動原動機Ｍたとえば電動機、内燃機関、またはハイブリッドエンジンを用いてもよい。さらに別の選択肢として、４つの車輪ハブ電動機を用いてもよい。
【０１１７】
制御ユニット１８は、
・データとプログラム命令を記憶するデータ記憶装置Ｍ１と、
・プロセッサＰ、たとえばマイクロプロセッサまたはマイクロコントローラもしくは複数のプロセッサと、
・たとえば「ドライビング」"Fahren"など、１つまたは複数のプログラムファンクション、略してＡＰＦすなわちソフトウェアファンクションと
を含む。
【０１１８】
別の選択肢として制御ユニット１８を、プログラムによらず単に電子回路として構築してもよく、たとえばＡＳＩＣ（Application Specific Integrated Circuit）または結線をプログラミング可能な同等の回路を使用して構築してもよい。
【０１１９】
制御ユニット１８は、中央制御装置の一部として表されている。択一的に制御ユニット１８を、分散型制御装置の一部としてもよい。
【０１２０】
制御ユニット１８はバスシステム２４と接続されており、したがって１つのネットワークノードを成している。バスシステム２４はたとえばEthernet、CANネットワーク（Controller Area Network）またはFlexRayバスである。択一的にバスシステム２４としてLAN（Local Area Network）を用いてもよく、特に冗長的に構成されたLANを用いてもよく、このようなLANによってたとえば、１つの論理平面上に２つのリング構造が形成される。
【０１２１】
たとえばバスシステム２４と上述のファンクションユニットとの間に、以下の接続ラインが設けられている。すなわち、
・アクセルペダル１６へ向かう接続ライン３０、
・ハンドル１４へ向かう接続ライン３２、
・オプションとして設けられる中央原動機Ｍへ向かうオプションの接続ライン３４、
・車輪ユニット２２へ向かう接続ライン３６、
・車輪ユニット２０へ向かう接続ライン４０。
【０１２２】
別の選択肢として、前輪駆動部または全輪駆動を用いることもできる。
【０１２３】
制御ユニット１８ｂはたとえば、制御ユニット１８と同じように構成されている。制御ユニット１８ｂはバスシステム２４ｂを介して、上述のユニット１４，１６，Ｍ，２０および２２と接続されている。
【０１２４】
図１に示されているユニットの電圧給電も、二重化または多重化して冗長的に構成することができる。
【０１２５】
あとで図２を参照しながら説明する方法または他の方法によれば、ファンクションユニット１４，１６，Ｍ，２０，２２，ＡＰＦ等のパフォーマンス値／デグラデーション値に従って、いずれの制御ユニット１８，１８ｂを目下アクティブにすべきか、およびいずれが非アクティブであるのか、が決定される。ここで「アクティブ」が意味するのは、アクティブな制御ユニットによってドライビングが制御される、ということである。「非アクティブ」は、該当する制御ユニットがスイッチオフされた状態にある、ということを意味する場合もあるし、または該当する制御ユニットは動作しているけれども、その制御信号は自動車１０の目下の制御のためには用いられない、ということを意味する場合もある。このコンテキストにおいて、主従方式もしくはマスタ−スレーブ方式という呼び方も用いられる。個別パフォーマンス値および総パフォーマンス値の算出については、あとで図３〜図１６を参照しながら説明するが、それらの説明は、必ずしも図１および図２に示したコンフィギュレーションを引き合いに出したものではなく、それよりも一般的に当てはまるものである。
【０１２６】
図２には、「ドライビング」"Fahren"という用途のための複数のファンクションユニットのうち、互いに冗長構成を成す２つのアプリケーションもしくは適用事例が示されている。図２には、著しく簡略化された形態で、２チャネルの車輪アクチュエータ５０が示されている。
【０１２７】
第１のアクチュエータチャネル５４は、
・二重化されていないアクセルペダル１６と、
・このアクセルペダル１６と、データ処理装置もしくは制御ユニットＤＶＡａもしくは１８との間の、たとえばバスシステムの一部である通信リンクＫ１ａｂと、
・制御ユニットＤＶＡａと、やはり二重化されていない車輪ユニット２０，２２との間の、たとえばバスシステムの一部である通信リンクＫ２ａｂと、
を含んでいる。
【０１２８】
第２のアクチュエータチャネル５６は、
・同様に、二重化されていないアクセルペダル１６と、
・このアクセルペダル１６と、データ処理装置もしくは制御ユニットＤＶＡｂもしくは１８ｂとの間の、たとえばバスシステムの一部である通信リンクＫ１ａｂと、
・制御ユニットＤＶＡｂと、やはり二重化されていない車輪ユニット２０，２２との間の、たとえばバスシステムの一部である通信リンクＫ２ａｂと、
を含んでいる。
【０１２９】
第１のアクチュエータチャネル５４は、マスタＭとしてアクティブである。第２のアクチュエータチャネル５６は、たとえば目下のところスレーブ／サーバントＤとして扱われ、つまりこのチャネルは目下、アクティブではなく、ただし第１のアクチュエータチャネル５４においてエラーが発生した場合のフォールバックポジションを成している。
【０１３０】
制御ユニットＤＶＡａおよびＤＶＡｂは常時、たとえば５０ｍｓよりも短いタイムインターバルで、第１のアクチュエータチャネル５４もしくは第２のアクチュエータチャネル５６のステータスクエリもしくはエラー検出６０もしくは６２を実行する。ついでクエリ結果に基づき、ユニットもしくはネットワークノードに対する個別パフォーマンス値と、該当するアクチュエータチャネル５４もしくは５６を成すアプリケーションに対する総パフォーマンス値とが求められる。これは基本的に、あとで図３〜図１４もしくは図３〜図１６を参照しながら説明するようにして行うことができる。複数のアプリケーションによって１つのクラスタを形成することができ、このクラスタに対し１つのクラスタパフォーマンス値を求めることができ、これについてはあとで特に図１５および図１６を参照しながら説明する。ただし、クラスタ形成を伴わないマスタ／スレーブ方式も可能である。
【０１３１】
上述のパフォーマンス値を、制御ユニットＤＶＡａ、制御ユニットＤＶＡｂ、両方の制御ユニットＤＶＡａとＤＶＡｂにおいて冗長的に、または上位の制御ユニットにおいて、求めることができる。
【０１３２】
データ処理装置（コンピュータ）ＤＶＡａには、特に以下のプログラムファンクションをインストールしておくことができる。すなわち、
・プログラムファンクション「ドライビング」"Fahren" ＡＰＦａ、
・プログラムファンクション「ステアリング」"Lenken" ＡＰＬａ、
・プログラムファンクション「ブレーキング」"Bremsen" ＡＰＢａ、および必要に応じて、
・さらに別のプログラムファンクション５７ａ（ＡＢＳ（アンチロックシステム）、ＡＣＣ（オートマチッククルーズコントロール）、ＥＳＰ（エレクトロニックスタビリティプログラム）など）。
【０１３３】
データ処理装置（コンピュータ）ＤＶＡａには、特に以下のプログラムファンクションをインストールしておくことができる。すなわち、
・ＡＰＦａに対し冗長構成となるプログラムファンクション「ドライビング」"Fahren" ＡＰＦｂ、
・ＡＰＬａに対し冗長構成となるプログラムファンクション「ステアリング」"Lenken" ＡＰＬｂ、
・ＡＰＢａに対し冗長構成となるプログラムファンクション「ブレーキング」"Bremsen" ＡＰＢｂ、および必要に応じて、
・５７ａに対し冗長構成となるさらに別のプログラムファンクション５７ｂ（ＡＢＳ（アンチロックシステム）、ＡＣＣ（オートマチッククルーズコントロール）、ＥＳＰ（エレクトロニックスタビリティプログラム）など）。
【０１３４】
プログラムファンクションＡＰＦはたとえば、１つのプログラムファンクションのみを含む１つのクラスタを成しており、もしくはクラスタには対応づけられていない。プログラムファンクションＡＰＬおよびＡＰＢは、たとえば複数のプログラムファンクションもしくはファンクションユニット群を含む１つのクラスタを成しており、これについてはあとで詳しく説明する。クラスタに対しスカラー量のパフォーマンスレベルが計算され、これはマスタＭとスレーブＤを選択するために用いられる。
【０１３５】
これらのプログラムファンクションＡＰＦ，ＡＰＬ，ＡＰＢ等のために、および／または、これらのプログラムファンクションにより用いられるファンクションユニットのために、パフォーマンス値（パフォーマンスレベル）が、あとで詳しく説明するようにして計算されて、少なくとも１つのデータベースに記憶され、または冗長性という理由から、たとえば２つのデータベースＤＢａおよびＤＢｂに記憶される。
【０１３６】
両方のデータベースＤＢａ，ＤＢｂには、同じデータを記憶させることができる。データ処理装置ＤＶＡａ、略して装置ＤＶＡａは、たとえば通常のケースでは、データベースＤＢａにアクセスする。データ処理装置ＤＶＡｂ、略して装置ＤＶＡｂは、たとえば通常のケースでは、データベースＤＢｂにアクセスする。データベースＤＢａとＤＢｂとの間で、データの比較５８を行うことができる。
【０１３７】
データの比較５８に関しては、たとえば上述のM. Armbrusterによる論文［２］を参照されたい。単純化した視点で想定すれば、つまりたとえば非同期のスタートおよび他の非同期性に関連する問題を考慮しなければ、両方の装置ＤＶＡａおよびＤＶＡｂは、データ整合方法を用いることで、互いに同じ見え方をするし、ネットワーク内の他のすべてのユニットに対し同じ見え方をする、ということができる。見え方が同一であれば、たとえば装置ＤＶＡａは装置ＤＶＡｂに対し優先され、その場合、装置ＤＶＡａはマスタＭである。
【０１３８】
見え方に差異が生じ、ひいてはプログラムファンクションＡＰＦ，ＡＰＬ，ＡＰＢ等に対するパフォーマンスレベルがそれぞれ異なるようになる可能性があるとすれば、それはたとえばデータ伝送において、１つの論理レベルで偏差またはエラーが発生した場合である。
【０１３９】
したがって２つのデータ伝送リング構造を設けることができ、それらのリング構造にはそれぞれ、関連するファンクションユニットおよび装置ＤＶＡａ，ＤＶＡｂが含まれている。特に、装置ＤＶＡａとＤＶＡｂとを、２つのリングセグメントを介して互いに接続することができる。リング構造におけるデータ伝送方向を、ポートの設定により行うことができ、すなわち論理レベルで行うことができる。たとえば１つのポートが故障したならば、データ伝送は別の方向で引き続き行われるが、その場合、装置ＤＶＡａとＤＶＡｂの見え方は異なる可能性がある。
【０１４０】
図３には、ユニットもしくはネットワークノードのパフォーマンスもしくは性能に対して規定されたクラスが、デグラデーションテーブル１００として示されている。デグラデーションテーブル１００は、以下の内容を含む列１０２〜１０８を有している。すなわち、
・列１０２には、個々のユニットタイプの識別子（ＩＤ識別子）が含まれている。
・列１０３には、ユニットタイプが記載されており、この場合、あとで説明する冗長性フィーチャが考慮される。
・列１０４には、テーブル１００の該当する行のユニットタイプに対し、デグラデーションレベル０が規定されているか否か、およびデグラデーションレベルがどのように定義されているのか、が記載されている。
・列１０６には、テーブル１００の該当する行のユニットタイプに対し、デグラデーションレベル１が規定されているか否か、およびデグラデーションレベルがどのように定義されているのか、が記載されている。
・列１０８には、テーブル１００の該当する行のユニットタイプに対し、デグラデーションレベル２が規定されているか否か、およびデグラデーションレベルがどのように定義されているのか、が記載されている。
【０１４１】
図示されていない列において、すべてのユニットタイプに対しデグラデーションレベルＮが規定されており、ただしＮは、最大デグラデーションを表す自然数であり、たとえば１０進数の１０である。図９のPL_RED（パフォーマンスレベルＲＥＤもしくは赤）も参照。
【０１４２】
これよりも多くの列またはこれよりも少ない列を規定してもよいし、および／または、これよりも多くの識別子ＩＤまたはこれよりも少ない識別子ＩＤを設定してもよい。
【０１４３】
ユニットタイプを規定する際に、以下の冗長性フィーチャを考慮することができる。すなわち、
・ファンクションユニットの冗長性なし、または多重に設けられたファンクションユニットによる冗長性あり。すなわちこのファンクションに対し、この１つのファンクションユニットだけしか存在しない。
・１つのファンクションユニットに関して値冗長性なし、または値冗長性あり。たとえば複数の値が何回も求められ何回も伝送されるなど。
・通信冗長性なし、特に通信リンク冗長性なし、または多重通信による冗長性あり。特に通信リンク冗長性あり。
【０１４４】
１行目１１０はたとえば、値１の識別子ＩＤに関する。この値には、たとえばユニットタイプ"simplex/single/single-link"が属しており、すなわちユニット冗長性なし、値冗長性なし、そして通信冗長性なし、である。このユニットにおいていかなるエラーも存在しなければ、デグラデーションレベル０となる。デグラデーションレベルＮ以外の他のデグラデーションレベル、特にデグラデーションレベル１および２は、ユニットタイプ"simplex/single/single-link"に対しては定義されていない。
【０１４５】
２行目１１２はたとえば、値２の識別子ＩＤに関する。この値には、たとえばユニットタイプ"simplex/single/dual-link"が属しており、すなわちユニット冗長性なし、値冗長性なし、ただし二重化された通信もしくはデュアル通信による冗長性あり、である。このユニットにおいていかなるエラーも存在しなければ、デグラデーションレベル０となる。通信リンクにエラーがあれば、デグラデーションレベル１となる。デグラデーションレベル２は、ユニットタイプ"simplex/single/dual-link"に対しては定義されていない。車輪アクチュエータ２０，２２は、たとえば値２のユニットタイプを有しており、すなわち"simplex/single/dual-link"を有している。
【０１４６】
３行目１１４はたとえば、値３の識別子ＩＤに関する。この値には、たとえばユニットタイプ"simplex/dual/single-link"が属しており、すなわちユニット冗長性なし、値冗長性あり、通信冗長性なし、である。このユニットにおいていかなるエラーも存在しなければ、デグラデーションレベル０となる。デグラデーションレベルＮ以外の他のデグラデーションレベル、特にデグラデーションレベル１および２は、ユニットタイプ"simplex/dual/single-link"に対しては定義されていない。アクセルペダル１６はたとえば、ユニットタイプ"simplex/dual/single-link"を有する。
【０１４７】
行１１４と行１２８との間にあるその他の行には、たとえばさらに以下の値が記載されている。すなわち、
・ユニット冗長性に対する"duplex"、
・値冗長性に対する"dual-dual"、
・値冗長性に対する"duplex"、さらに
・値冗長性に対する"duo-duplex"。
【０１４８】
これらの意味は以下のとおりである。すなわち、
・duplex：ビットが同じ２つの値による値冗長性、
・dual：デルタ整合した２つの値、すなわちたとえば絶対値（値Ａ−値Ｂ）＜デルタによる値冗長性、さらに
・Duo-XXXX：２つの物理的なボックスもしくはユニットのうちXXXX個の値冗長性がある。
【０１４９】
最後から２行目１２８は、１０である識別子ＩＤと、ユニットタイプ"duplex/duo-duplex/dual-link"を有しており、すなわちユニット冗長性と、４倍の値冗長性（それぞれ２つのセンサ値を有する２つのネットワークノード、この場合、ネットワークノードごとにそれぞれ２つの値が比較されるが、２つのネットワークノード相互間の値は比較されない）と、二重化された通信の冗長性とを有する。デグラデーションレベルは、以下のように定義されている。すなわち、
・Deg-Level 0：エラーなし、
・Deg-Level 1：リンク消失、
・Deg-Level 2：センサペア消失。
【０１５０】
最後の行１３０はたとえば、ユニットタイプ"simplex/duo-triple/dual-link"に関する。このユニットタイプに対するデグラデーションレベルは、まだ規定されておらず、すなわち未定義tbd (to be defined)である。最後の行１３０は省略してもよい。
【０１５１】
図４には、第１の設計段階による依存関係行列１５０ａもしくはＡが示されている。この依存関係行列１５０ａは、アプリケーション「ドライビング」"Fahren"に関する。この場合、依存関係行列１５０ａもしくはＡに対し、ないしは依存関係行列１５０ａもしくはＡ内において、以下の対応づけが適用される。すなわち、
・列１５２ａは、該当する行１７０ａ〜１８６ａのパフォーマンスレベル値を表す。
・列１５４ａには、パフォーマンスレベルの言葉による説明が含まれている。
・アクセルペダル１６には、ユニット"VirtAgg Fahrpedal"（アクセルペダル）が対応する。２つの列１５８ａを参照。これらの列は左から右へ向かって、デグラデーションレベル０ないしはＮに割り当てられている。
・車輪アクチュエータ２２には、ユニット"VirtAgg Rad HL"（車輪ＨＬ）が対応する。３つの列１６０ａを参照。これらの列は左から右へ向かって、デグラデーションレベル０，１もしくはＮに割り当てられている。
・車輪アクチュエータ２０には、ユニット"VirtAgg Rad HR"（車輪ＨＲ）が対応する。３つの列１６２ａを参照。これらの列は左から右へ向かって、デグラデーションレベル０，１もしくはＮに割り当てられている。さらに、
・ＡＰＦには、アプリケーション「ドライビング」"Fahren"が対応する。２つの列１６６ａを参照。これらの列は左から右へ向かって、デグラデーションレベルDeg0（「ランニング状態」"Running"）もしくはDegN（「アイソレーション状態」"Isolated"）に割り当てられている。
【０１５２】
依存関係行列１５０ａ，Ａの１行目１７０ａは、すべてのユニットが使用可能でありつまりエラーが存在しないパフォーマンス状態に関する。したがって、あとで図８を参照しながら詳しく説明するように、値１０のパフォーマンスレベルが生じている。"&"（ＡＮＤ結合のシンボル）、特に要素１８７ａによって表されているのは、ユニット１６とユニット２２とユニット２０とプログラム「ドライビング」"Fahren"が、個別デグラデーションレベルDeg0もしくは「ランニング」"Running"を有する、ということである。したがって、すべてのユニット１６，２２，２０およびプログラム「ドライビング」"Fahren"を使用することができる。
【０１５３】
依存関係行列１５０ａ，Ａの２行目１７２ａは、少なくとも１つのユニットの可用性が減少しているパフォーマンス状態に関する。このことは、値７もしくは６のパフォーマンスレベルに相応する。図８も参照。たとえば車輪アクチュエータ２２もしくは"VirtAgg_Rad_HL"は、デグラデーションレベル１を有する。この場合、車輪アクチュエータ２０もしくは"VirtAgg_Rad_HR"の状態がDeg0（デグラデーションレベル０）であるのか、またはDeg1（デグラデーションレベル１）であるのかが重要である。要素１８８ａの" | "（ＯＲ結合）およびその隣りのＯＲ結合を参照。
【０１５４】
依存関係行列１５０ａ，Ａの３行目１７４ａも、少なくとも１つのユニットの可用性が減少しているパフォーマンス状態に関する。これもやはり、値７もしくは６のパフォーマンスレベルに相応する。図８も参照。たとえばこの場合、車輪アクチュエータ２０もしくは"VirtAgg_Rad_HR"は、デグラデーションレベル１を有する。ここでは、車輪アクチュエータ２２もしくは"VirtAgg_Rad_HL"の状態がDeg0（デグラデーションレベル０）であるのか、またはDeg1（デグラデーションレベル１）であるのかが重要である。列１６０ａの１〜２列目、つまり車輪アクチュエータ２２のデグラデーションレベルDeg0とDeg1に該当する列における" | "（ＯＲ結合）を参照。
【０１５５】
さらに、依存関係行列１５０ａ，Ａにおいて、値５のデグラデーションレベルに該当する２つの行１７６ａおよび１７８ａが規定されている。つまり、１つのユニットたとえば車輪アクチュエータ２０は使用不可能であり（DegN）、その場合、別の車輪アクチュエータ２２の状態Deg0およびDeg1が重要であり、もしくは車輪アクチュエータ２２は使用不可能であり、つまりDegNであり、その場合、車輪アクチュエータ２０の状態Deg0およびDeg1が重要である。行１７４ａもしくは行１７６ａにおける対応する" | "シンボルを参照。
【０１５６】
さらに依存関係行列１５０ａ，Ａにおいて、３つの行１８０ａ〜１８６ａが規定されており、これらの行はデグラデーションレベル０すなわち「ファンクション実行不可能」に該当する。ここではシンボル"X"、たとえば要素１８９ａ参照、によって、問題となる状態もしくはデグラデーションレベルが表される。"X"（これは常にユニットに関連する）を含むセルもしくは行は、さらに細分化可能であり、これに関して、行１８０ａに対応する行１８０ｃについては図６を参照しながら、行１８６ａに対応する行１８６ｃについては図７を参照しながら、あとでさらに詳しく説明する。なお、シンボル"-"が意味するのは、ある特定のデグラデーションレベルは存在しない、ということである。
【０１５７】
たとえばファンクション「ドライビング」"Fahren"が実行不可能であるのは、両方の車輪アクチュエータ２２および２０がデグラデーションレベルDegNである場合、行１８０ａ参照、またはアクセルペダル１６がデグラデーションレベルDegNである場合、行１８４ａ参照、またはプログラム「ドライビング」"Fahren"が状態「アイソレーション」"Isolated"にある場合、行１８６ａ参照、である。
【０１５８】
以上のとおりこの実施例によれば、依存関係行列１５０ａ，Ａは当初、１０個の列１５８ａ〜１６６ａと８個の行１７０ａ〜１８６ａを有している。
【０１５９】
別の実施例によれば、依存関係行列１５０ａ，Ａにおける依存関係が、図４に示したものとは異なるように規定され、特に、それよりも多いまたは少ないもしくは別のユニット、プログラム（すなわち列）を用いて、および／または、それよりも多いまたは少ないもしくは別の行ないしは総デグラデーションレベルを用いて、規定される。
【０１６０】
図５には、第２の設計段階による依存関係行列Ａが示されており、この段階では、依存関係行列１５０ａから依存関係行列１５０ｂが発生している。列１５２ｂ〜１６６ｂは列１５２ａ〜１６６ａに対応している。また、行１７０ｂは行１７０ａに対応している。行１７２ａのＯＲ結合が解かれて、この行１７２ａは、補足された行１７２ｂ１および１７２ｂ２によって置き換えられており、この場合、行１７２ｂ１において、列１６２ｂのDeg0列に"&"シンボルがあり、列１７２ｂ２において、列１６２ｂのDeg1列に"&"シンボルがある。列１５２ｂの行１７２ｂ２には、６というパフォーマンスレベル値が生じており、つまり、「２つ以上のユニットの可用性が減少している」ことを表すYELLOW4が生じている。
【０１６１】
同様に、行１７４ａ，１７６ａ，１７８ａのＯＲシンボルが解かれている。行１７４ｂ１，１７４ｂ２；１７６ｂ１，１７８ｂ２もしくは１７８ｂ１，１７８ｂ２を参照。列１５２ｂの行１７４ｂ２には、やはり６というパフォーマンスレベル値が生じており、つまり、「２つ以上のユニットの可用性が減少している」ことを表すYELLOW4が生じている。
【０１６２】
したがって、依存関係行列１５０ｂには、要素１８７ａに対応する要素１８７ｂと、要素１８９ａに対応する行列要素１８９ｂが存在する。これに対し、要素１８８ｂおよびその右隣の行列要素すなわちＯＲ結合は、もはや存在していない。行１７２ｂ１および１７２ｂ２においてそれらの個所には、２×２の行列が存在しており、その際、この部分行列の各行には、"&"シンボルと"-"シンボルが、もしくは"-"シンボルと"&"シンボルが設けられている。この部分行列以外、行１７２ａの値は、行１７２ｂ１および１７２ｂ２へそのまま引き継がれている。同様のことは、補足された他の行１７４ｂ１〜１７８ｂ２についても当てはまる。
【０１６３】
図６には、第３の設計段階による依存関係行列Ａが示されており、この段階では、"&"シンボルの個所にたとえば値”1”をセットするようにして、依存関係行列１５０ｂから、依存関係行列１５０ｃが発生している。さらにその際、シンボル"-"の個所には、たとえばそれぞれ値"0"がセットされる。別の実施形態によれば、場合によってはいっそう簡単に理解できるシンボル"&"および"-"に頼らず、値"0"および”1”がそのまま用いられる。つまり行列１５０ｂの要素"&"１８７ｂには、行列１５０ｃの要素”1”もしくは１８７ｃが対応する。
【０１６４】
列１５２ｂ〜１６６ｂには列１５２ｃ〜１６６ｃが対応している。また、行１７０ｂには行１７０ｃが対応している。さらに、補足された行１７２ｂ１〜１７８ｂ２には、補足された行１７２ｃ１〜１７８ｃ２が対応している。行１８０ｂ〜１８６ｂには、行１８０ｃ〜１８６ｃが対応しており、その際、行１８０ｃ〜１８６ｃには依然として、シンボル"X"が存在している。たとえば要素１８９ｂに対応する要素１８９ｃを参照。
【０１６５】
これらのシンボル"X"は、行１８０ｃに関しては以下のように分解される。すなわち行１８０ｃから２つの新たな行が生成され、それらの行の要素が、"X"の存在しない個所ではそのまま行１８０ｃから引き継がれる。新たに生成された第１の行には、たとえば要素１８９ｃの"X"の代わりに"1"が書き込まれ、その右隣にある"X"の個所には"0"が書き込まれる。
【０１６６】
別の選択肢として、シンボル"X"を、すでに依存関係行列１５０ｂにおいて、"&"シンボルに同じようなやり方で分解してもよく、その際、次のステップにおいて、"&"シンボルを値"1"によって置き換え、シンボル"-"を値"0"によって置き換えることができる。
【０１６７】
行１８６ｃのシンボル"X"の分解については、あとで図７を参照しながら、シンボル"X"が書き込まれている列１５８ｃ、１６０ｃ、１６２ｃを引き合いに出して詳しく説明する。行１８６ｃの列１６６ｃにおける値"0"および"1"はやはりそのまま、補足されたすべての行に引き継がれる。同様のやり方で、行１８４ｃにおけるシンボル"X"が分解される。
【０１６８】
依存関係行列１５０ｃのセクション１９０には、列１６０ｃすなわち車輪アクチュエータ２２もしくはVirtAgg_Rad_HLおよび列１６２ｃすなわち車輪アクチュエータ２０もしくはVirtAgg_Rad_HRと、列１７０ｃ，１７２ｃ１〜１７８ｃ２とのクロスオーバー要素が含まれている。セクション１９０は、特に図１２および図１３において、さらに別の計算のプロセスを簡単に説明するために用いられる。自動車１０においては一般的に、さらに別の計算をするために依存関係行列Ａ全体が用いられるが、その際、依存関係行列Ａが、さらに分解されるシンボル"X"を含め、依存関係行列１５０ｃよりもはるかに大きくなる可能性もある。たとえば依存関係行列Ａは、５０列よりも多く、および／または５０行よりも多い。
【０１６９】
図７には、第３の設計段階による依存関係行列Ａの１つのセクション１９６が示されている。セクション１９６は、行１８６ｃにおいてシンボル"X"が現れていた列１５８ｃ、１６０ｃ、１６２ｃを示している。行１８６ｃの個所において１８個の行１８６ｃ１〜１８６ｃ１８が補足され、これらの行には、アクセルペダル１６のデグラデーションレベルDeg0, DegN、車輪アクチュエータＨＬ，２２のデグラデーションレベルDeg0, Deg1, DegN、および車輪アクチュエータＨＲ，２０のデグラデーションレベルDeg0, Deg1, DegNに関して現れる可能性のあるすべての順列がリストアップされている。
【０１７０】
つまりたとえば列１６２ｃには、車輪アクチュエータＨＲ，２０のデグラデーションレベルDegN, Deg1, Deg0の値が"1"である３つのグループが存在し、各グループにはそれぞれ６つの行が含まれている。最初の６行には、車輪アクチュエータＨＬ，２２のデグラデーションレベルDegN, Deg1, Deg0の値が"1"である３つのサブグループが存在し、その際、各サブグループにはそれぞれ２つの行が含まれている。各サブグループ内において、アクセルペダル１６のデグラデーションレベルDegNの値が"1"である行と、アクセルペダル１６のデグラデーションレベルDeg0の値が"1"である行とが区別される。ここで挙げなかった１つの行の要素の値は"0"である。すべての順列が考慮されているかぎり、この順列の順序を図示の順序とは異ならせてもよい。
【０１７１】
同様のことは、第２のグループ（ユニットＨＲ，２０；Deg1 = 1）の６つの列についても、第３のグループ（ユニットＨＲ，２０；Deg0 = 1）の６つの列についても当てはまる。行１８６ｃ１〜１８６ｃ１８の最後に示した３つの点は、それぞれ行１８６ｃから値"01"が引き継がれることを表している。
【０１７２】
図８には、それぞれ複数のユニットもしくはネットワークノードを含む複数のアプリケーションもしくは用途もしくはプログラムファンクションに対するパフォーマンスレベルの規定について示されている。これらをテーブル２００として規定してもよいし、または別の態様で規定してもよい。
【０１７３】
テーブル２００には、以下の意味を有する列２０２〜２０６が含まれている。すなわち、
・列２０２には、パフォーマンスレベルの１０進数値が含まれており、たとえば最高のパフォーマンス値を表す"10"で始まり、最低のパフォーマンス値を表す値"0"まで含まれる。これよりも大きいまたは小さいもしくは異なる１０進数値、つまりはパフォーマンスレベルＰＬを規定してもよい。
・列２０４には、個々のパフォーマンスレベルＰＬを理解できるようにした記述が含まれており、最高のパフォーマンス値を表すGREEN（緑色）から始まり、中程度のパフォーマンス値を表すYELLOW1〜YELLOW9（黄色）を経て、最低のパフォーマンス値もしくは最大のデグラデーションレベルを表すRED（赤色）まで含まれる。列２０４はオプションである。
・列２０６には、特定のパフォーマンスレベルＰＣに当てはめるための選択基準もしくは選択条件が、言葉による形態または他の適切な形態で含まれている。
【０１７４】
さらにテーブル２００には、以下の意味を有する行２１０〜２３０が含まれている。すなわち、
・行２１０は、値"10"を有するパフォーマンスレベルGREENに該当する。この場合、アプリケーション（ｉ）が依存する他のすべてのアプリケーション（ｊ）を、デグラデーションもしくは障害なく使用可能であるならば、パフォーマンスレベルGREENが発生する。
・行２１２は、値"9"を有するパフォーマンスレベルYELLOW1に該当する。この場合、パフォーマンスレベルYELLOW1は目下のところ未定義であり、したがって無視してかまわない。
・行２１４は、値"8"を有するパフォーマンスレベルYELLOW2に該当する。この場合、パフォーマンスレベルYELLOW2も目下のところ未定義であり、したがって無視してかまわない。
・行２１６は、値"7"を有するパフォーマンスレベルYELLOW3に該当する。この場合、１つのユニット／ネットワークノードの可用性が減少しているならば、パフォーマンスレベルYELLOW3が発生する。
・行２１８は、値"6"を有するパフォーマンスレベルYELLOW4に該当する。この場合、２つ以上のユニット／ネットワークノードの可用性が減少しているならば、パフォーマンスレベルYELLOW4が発生する。
・行２２０は、値"5"を有するパフォーマンスレベルYELLOW5に該当する。この場合、少なくとも１つのユニット／ネットワークノードが故障または欠落して、制御品質もしくはファンクションパフォーマンスが、顧客が認識できない程度に劣化したならば、パフォーマンスレベルYELLOW5が発生する。
・行２２２は、値"4"を有するパフォーマンスレベルYELLOW6に該当する。この場合、少なくとも１つのユニット／ネットワークノードが故障もしくは欠落して、制御品質もしくはファンクションパフォーマンスが、顧客が認識できる程度に劣化したならば、パフォーマンスレベルYELLOW6が発生する。
・行２２４は、値"3"を有するパフォーマンスレベルYELLOW7に該当する。この場合、少なくとも１つのユニット／ネットワークノードが故障もしくは欠落して、制御品質もしくはファンクションパフォーマンスが、顧客が認識できる程度に劣化し、さらにこれに加えてアプリケーション（ｉ）が、スケジュール外のメンテナンスの必要性を通報したならば、すなわち、メンテナンスタスクの中断ではなくドライビングタスクの中断を通報したならば、パフォーマンスレベルYELLOW7が発生する。
・行２２６は、値"2"を有するパフォーマンスレベルYELLOW8に該当する。この場合、少なくとも１つのユニット／ネットワークノードが故障もしくは欠落して、制御品質もしくはファンクションパフォーマンスが、顧客が認識できる程度に、しかもパフォーマンスレベルYELLOW6よりもひどく劣化したならば、パフォーマンスレベルYELLOW8が発生する。オプションとして、アプリケーション（ｉ）がスケジュール外のメンテナンスの必要性を通報するように、すなわちメンテナンスタスクの中断ではなくドライビングタスクの中断を通報するように、要求することができる。
・行２２８は、値"1"を有するパフォーマンスレベルYELLOW9に該当する。この場合、少なくとも１つのユニット／ネットワークノードが故障もしくは欠落して、制御品質もしくはファンクションパフォーマンスが、顧客が認識できる程度に劣化したならば、またはアプリケーション（ｉ）が、赤信号警告すなわちまだパフォーマンスレベルREDではない警告を送出し、つまりタスク中断が必須であるならば、パフォーマンスレベルYELLOW9が発生する。
・行２３０は、値"0"を有するパフォーマンスレベルREDに該当する。この場合、アプリケーション（ｉ）が実行不可能であるならば、またはDL（上述の説明を参照）が実行されるならば、またはパフォーマンスが、パフォーマンスレベルYELLOW9のパフォーマンスよりも劣化しているならば、パフォーマンスレベルREDが発生する。
【０１７５】
以上のように、パフォーマンスレベルをアプリケーションレベルで規定する場合には、顧客の認識、および／またはメンテナンスタスクの中断、および／またはドライビングタスクの中断、という判定基準が特に考慮される。別の実施例によれば、他の態様および／または他の判定基準を用いて、パフォーマンスレベルが規定される。
【０１７６】
図９には、変数「デグラデーションレベル」の１０進数値と、対応するデグラデーションレベルとの対応関係、さらにこれらとユニットもしくはネットワークノードのクラスとの対応関係が、テーブル２５０として示されている。テーブル２５０には、以下の内容を有する列２５２〜２７６が含まれている。すなわち、
・列２５２は、変数PL_GREEN（パフォーマンスレベルGREEN）、PL_YELLOW1〜PL_YELLOW9および変数PL_REDを定義している。たとえば出願人の独自仕様または標準を充足する目的で、変数名をPERFORMANCELEVEL_PL_GREENなどとしてもよい。
・列２５４は、変数の１０進数値を表し、ここでは０〜１０の範囲であり、PL_GREENから始まり、YELLOW1〜YELLOW9を経て、PL_REDまでを表す。
・列２５６は、デグラデーションレベルの値を表し、ここでは０〜９およびＮまでであり、PL_GREENから始まり、YELLOW1〜YELLOW9を経て、PL_REDまでを表す。
・１０個の列２５８〜２７６は、この順序に従い、図３の行１１０〜１２８に示した１０個のユニットタイプに対応し、"simplex/single/single-link"から始まり"duplex/duo-duplex/dual-link"で終わる。
【０１７７】
テーブル２５０には、以下の行２８０〜３００が含まれている。すなわち、
・行２８０は、１０進数値が０である変数PL_GREENおよびデグラデーションレベル０に該当する。すべてのユニットタイプがデグラデーションレベル０を有することができる。すべての列２５８〜２７６中のＸを参照。
・行２８２は、１０進数値が１である変数PL_YELLOW1およびデグラデーションレベル１に該当する。ユニットタイプ１，３，７を除いてすべてのユニットタイプがデグラデーションレベル１を有することができる。該当する列２６０，２６４〜２６８および２７２〜２７６中のXを参照。
・行２８４は、１０進数値が２である変数PL_YELLOW2およびデグラデーションレベル２に該当する。ユニットタイプ６および１０だけがデグラデーションレベル２を有することができる。該当する列２６８および２７６中のXを参照。
・行２８６〜２９８は、１０進数値が３〜９である変数PL_YELLOW3〜PL_YELLOW7およびデグラデーションレベル３〜９に該当する。この実施例によればこれらのデグラデーションレベルは、列２５８〜２７６において該当するユニットタイプに対しては規定されておらず、したがってテーブル２５０の行２８６〜２９８のこれらの列には、それぞれシンボル"-"が含まれており、これは該当するデグラデーションレベルは該当するユニットタイプには使用できない、ということを表す。
・行３００は、１０進数値が１０である変数PL_REDおよびデグラデーションレベルＮに該当する。すべてのユニットタイプがパフォーマンスレベルＮを有することができる。すべての列１５８〜２７６中のＸを参照。
【０１７８】
テーブル２５０の下端部には、列２５８〜２７６に対するユニットタイプの識別子ＩＤが記載されており、これは値"1"から始まり値"10"まである。このためテーブル２５０は、図３に示したテーブルに実質的に対応しているが、テーブル２５０では言葉による説明の代わりに、該当するデグラデーションレベルが定義されているのか否か、だけが記入されている。このことからテーブル２５０は、機械特に計算機によって、いっそう簡単に評価することができる。
【０１７９】
ただし、ユニットの目下の状態に応じて、それぞれ１つの特定のデグラデーションレベルだけしか発生しない。
【０１８０】
別の実施例によれば、ユニットクラスのデグラデーションレベルに対する別の規定、および／またはデグラデーションレベルの１０進数値および／または値に対する別の規定も存在する。特に、これよりも大きいまたは小さいデグラデーションレベル、および／または他のデグラデーションレベルを用いてもよい。
【０１８１】
図１０には、ファンクションもしくはアプリケーション「ドライビング」"Fahren"に対するデグラデーション行列Ｘもしくは３５０の１つのセクションが示されている。図１０には、デグラデーション行列Ｘもしくは３５０の列の意味を説明するために、列３５２および３５４が示されている。列３５２は、パフォーマンスベクトルｐと一致しており、これはデグラデーション行列３５０の個々の行３７０〜３９４に対するパフォーマンスレベルを表す。パフォーマンスベクトルは、依存関係行列Ａの行の意味とも一致している。たとえば図６の列１５２ｃを参照。列３５４には、個々のパフォーマンスレベルもしくは個々の行３７０〜３９４の意味が言葉で説明されており、これもやはり、補足された依存関係行列Ａの説明と一致している。たとえば図６の列１５４ｃを参照。
【０１８２】
ここで留意したいのは、見やすくするために、デグラデーション行列Ｘもしくは３５０の最後の３行３８８〜３９４は、まだ分解されておらず、したがってここでは本来であればそれ相応にさらに多くの行が用いられることになり、これについては依存関係行列Ａに関して、たとえば図７を参照しながら詳しく説明してある。
【０１８３】
デグラデーション行列Ｘもしくは３５０の第１の列３５６には、バーチャルユニット「アクセルペダル」"Fahrpedal"のデグラデーションレベルDeg0に該当する値が記入される。たとえば参照符号３９６の付された値を参照。この値は、クエリvar (degLevel0).virtAgg(Fahrpedal)によって、式（２）に従い求められる。目下、このデグラデーションレベル０になっているならば、たとえば値"1"とすることができる。デグラデーションレベル０になっていなければ、クエリにより値"0"が求められる。
【０１８４】
デグラデーション行列Ｘもしくは３５０の第２の列３５６には、ユニット「アクセルペダル」"Fahrpedal"のデグラデーションレベルDegNに該当する値が記入される。この場合も、クエリvar (degLevelN).virtAgg(Fahrpedal)が、やはり式（２）に従って用いられる。目下、このデグラデーションレベルＮになっているならば、たとえば値"1"とすることができる。デグラデーションレベルＮになっていなければ、クエリにより値"0"が求められる。
【０１８５】
デグラデーション行列Ｘもしくは３５０のさらに次の列３６０は、以下のことに関する。すなわち、
・VirtAgg_Rad_HL, Deg0, Deg1 - single link, DegN ->
var (degLevel0 ).virtAgg(Rad_HL),
var (degLevel1).virtAgg(Rad_HL)もしくは
var (degLevelN).virtAgg(Rad_HL),
・VirtAgg_Rad_HR, Deg0, DegN - single link, DegN ->
var (degLevel0).virtAgg (Rad_HR),
var (degLevel1).virtAgg (Rad_HR)もしくは
var (degLevelN).virtAgg(Rad_HR),
・アプリケーション「ドライビング」"Fahren"、Deg0 (Running), DegN (Isolated) ->
var (degLevel0).virtAgg(Applikation_Fahren),
var (degLevelN).virtAgg((Applikation_Fahren)。
【０１８６】
簡単に描かれているデグラデーション行列Ｘもしくは３５０には、１２個の行３７６〜３９４が含まれており、これらの行はこの順序で、パフォーマンスレベル１０，７，６，７，６，５，５，５，５，０，０，０に対応づけられている。したがって、やはり特定のパフォーマンスレベルたとえば７，６，５，０に対し、複数の行が存在しており、この場合にはそれぞれ２行、２行、４行、もしくは３行である。
【０１８７】
この実施例によれば、デグラデーション行列Ｘもしくは３５０の１つの列内には、常に同じ値だけしか現れておらず、すなわち値０もしくは値１しか現れていない。ただし、閉じた表現ないしは自己完結型の表現もしくは単純な計算を保証できるように、すべての行が用いられる。
【０１８８】
別の実施例によれば、デグラデーション行列Ｘもしくは３５０は、ここで挙げたものよりも多くの列と行を含み、たとえば５０列よりも多くの列および／または５０行よりも多くの行を含む。さらに別の実施例によれば、たとえばデグラデーション行列Ｘもしくは３５０の行３７０に対応する１つのデグラデーションベクトルだけをセットしてもよい。
【０１８９】
図１１には、図１０に示したデグラデーション行列Ｘもしくは３５０に適用されるパフォーマンスベクトルｐが示されている。列３５２を参照。このパフォーマンスベクトルｐは、依存関係行列Ａについても当てはまる。図６の列１５２ｃを参照。ただし実際には、このパフォーマンスベクトルは、図示されているものよりも多くの行を含んでいる。その理由は、依存関係行列Ａは、さらにデグラデーション行列Ｘも、たとえばシンボル"X"を分解するためなど、場合によってはさらに複数の行で拡張されるからである。
【０１９０】
図１２には、デグラデーション行列Ｘのセクション３５０ｄと、転置された依存関係行列Ａのセクション１９０ｄとの行列乗算に関する第１の例が示されている。
【０１９１】
デグラデーション行列Ｘのセクション３５０ｄは、列３６０の一部に該当し、図１０参照、つまり車輪アクチュエータＨＬもしくは２２に関する３つの列４０２ｄ、４０４ｄ、４０６ｄと、車輪アクチュエータＨＲもしくは２０に関する３つの列４０８ｄ、４１０ｄ、４１２ｄに該当する。したがって列３５６もしくは３５８は、見やすくするためにここでは省かれているが、計算には同様に関与させることができる。同様のことは、プログラム「ドライビング」もしくはＡＰＦの目下の値に関する列３６２についても当てはまる。
【０１９２】
セクション３５０ｄのこれら６つの列４０２ｄ〜４１２ｄについて、以下のことが当てはまる。すなわち、
・列４０２ｄにおいて、すべての要素は値"1"を有しており、すなわち車輪アクチュエータ２２，ＨＬに対しデグラデーションレベルDeg0が生じている。
・列４０４ｄにおいて、すべての要素は値"0"を有する。
・列４０６ｄにおいて、すべての要素は値"0"を有する。
・列４０８ｄにおいて、すべての要素は値"1"を有し、すなわち車輪アクチュエータ２０，ＨＲに対しデグラデーションレベルDeg0が生じている。
・列４１０ｄにおいて、すべての要素は値"0"を有する。
・列４１２ｄにおいて、すべての要素は値"0"を有する。
【０１９３】
セクション１９０ｄは、列と行の入れ替えを除いて、セクション１９０と一致している。図６を参照。図１２には、列１６０ｃおよび１６２ｃに対応する転置された行１６０ｄおよび１６２ｄが示されているが、見やすくするため、これらの行はセクション１９０ｄに制限されている。
【０１９４】
セクション１９０ｄの９つの列４００ｄ１〜４００ｄは、この順序で、デグラデーションレベル１０，７，６，７，６，５，５，５，５に対応づけられており、対応する転置された要素の値が入れられている。
【０１９５】
周知のように行列乗算の場合、セクション３５０ｄの１行目の最初の要素が、セクション１９０ｄの１列目４００ｄ１の最初の要素と乗算される。ついでこれに、セクション３５０ｄの１行目の２番目の要素とセクション１９０ｄの１列目４００ｄ１の２番目の要素との積が加算され、という具合に、セクション３５０ｄの１行目と列４００ｄ１のすべての要素について、このことが行われる。その後、同じようにして、積行列４５０ｄもしくはＣの他の要素が計算される。式（３）も参照。
【０１９６】
積行列４５０ｄ，Ｃの９つの列４５２ｄ〜４６８ｄに対し、以下のことが成り立つ。すなわち、
・１列目４５２ｄにおいて、すべての要素は値"2"を有する。たとえば積行列４５０ｄ，Ｃの主対角線における最初の要素５００ｄを参照。
・２列目４５４ｄにおいて、すべての要素は値"1"を有する。たとえば最初の要素５０２ｄと、積行列４５０ｄ，Ｃの主対角線における２番目の要素５０４ｄを参照。
・３列目において、すべての要素は値"0"を有する。
・４列目において、すべての要素は値"1"を有する。
・５列目において、すべての要素は値"0"を有する。
・６列目において、すべての要素は値"1"を有する。
・７列目において、すべての要素は値"0"を有する。
・８列目において、すべての要素は値"1"を有する。たとえば最初の要素５０６ｄと、主対角線上の最後から２番目の要素５０８ｄを参照。
・９列目４６８ｄにおいて、すべての要素は値"0"を有する。たとえば主対角線上の最後の要素５１０ｄを参照。
【０１９７】
したがってたとえば主対角線の要素を、あとで図１４を参照しながら説明するファンクションによって評価することができる。別の選択肢として、主対角線要素のクエリが行われて、最大値が求められ、これはたとえばセクション４５０ｄ，Ｃの１列目における要素５００ｄである。この要素の値は"2"であり、これはセクション３５０ｄで考慮されたユニットの個数と一致する。さらに別の選択肢として、積行列４５０ｄ，Ｃにおける１つの行の要素たとえば１行目の要素を、評価することもできる。最大値を有する要素５００ｄは、その列番号を介して、有効なパフォーマンスレベルをじかに表す。この例ではデグラデーションは発生しなかったので、パフォーマンスレベル９が生じており、このレベルは、デグラデーション行列Ｘの１行目にも、ないしは依存関係行列Ａの１列目にも、割り当てられている。
【０１９８】
行列全体にわたり乗算されると、積行列４５０ｄもしくはＣの値が相応に高まり、その場合、最大値は、アプリケーション（ｉ）におけるユニットの個数と一致し、たとえば４である。たとえば図４を参照。この最大数に合わせて、あとで図１４を参照しながら説明するファンクションも、以降の計算のために整合される。式（８）も参照。
【０１９９】
図１３には、デグラデーション行列Ｘのセクション３５０ｅと、依存関係行列Ａのセクション１９０ｄとの行列乗算に関する第２の例が示されている。この場合、以下で説明する相違点を除き、図１２について説明したことがそのまま相応に当てはまる。
【０２００】
デグラデーション行列Ｘのセクション３５０ｅは、やはり列３６０の一部に該当し、図１０参照、つまり車輪アクチュエータＨＬもしくは２２に関する３つの列４０２ｅ、４０４ｅ、４０６ｅと、車輪アクチュエータＨＲもしくは２０に関する３つの列４０８ｅ、４１０ｅ、４１２ｅに該当する。したがって列３５６もしくは３５８は、見やすくするためにここでは省かれているが、計算には同様に関与させることができる。同様のことは、プログラム「ドライビング」もしくはＡＰＦの目下の値に関する列３６２についても当てはまる。
【０２０１】
セクション３５０ｅのこれら６つの列４０２ｅ〜４１２ｅについて、以下のことが当てはまる。すなわち、
・列４０２ｅにおいて、すべての要素は値"0"を有する。
・列４０４ｅにおいて、すべての要素は値"0"を有する。
・列４０６ｅにおいて、すべての要素は値"1"を有し、すなわち車輪アクチュエータ２２，ＨＬに対しデグラデーションレベルDegNが生じている。
・列４０８ｄにおいて、すべての要素は値"1"を有しており、すなわち車輪アクチュエータ２０，ＨＲに対しデグラデーションレベルDeg0が生じている。
・列４１０ｄにおいて、すべての要素は値"0"を有する。
・列４１２ｄにおいて、すべての要素は値"0"を有する。
【０２０２】
セクション１９０ｄは、列と行の入れ替えを除いて、セクション１９０と一致している。図６を参照。図１３には、列１６０ｃおよび１６２ｃに対応する転置された行１６０ｄおよび１６２ｄが示されているが、見やすくするため、これらの行はセクション１９０ｄに制限されている。
【０２０３】
積行列４５０ｅ，Ｃの９つの列４５２ｅ〜４６８ｅに対し、上述の行列乗算に従い以下のことが成り立つ。すなわち、
・１列目４５２ｅにおいて、すべての要素は値"1"を有する。たとえば積行列４５０ｅ，Ｃの主対角線における最初の要素５００ｅを参照。
・２列目４５４ｄにおいて、すべての要素は値"1"を有する。たとえば最初の要素５０２ｅと、積行列４５０ｅ，Ｃの主対角線における２番目の要素５０４ｅを参照。
・３列目において、すべての要素は値"0"を有する。
・４列目において、すべての要素は値"0"を有する。
・５列目において、すべての要素は値"0"を有する。
・６列目において、すべての要素は値"0"を有する。
・７列目において、すべての要素は値"0"を有する。
・８列目において、すべての要素は値"2"を有する。たとえば最初の要素５０６ｅと、主対角線上の最後から２番目の要素５０８ｅを参照。
・９列目４６８ｄにおいて、すべての要素は値"1"を有する。たとえば主対角線上の最後の要素５１０ｅを参照。
【０２０４】
したがってこの場合もたとえば主対角線の要素を、あとで図１４を参照しながら説明するファンクションによって評価することができる。別の選択肢として、主対角線要素のクエリが行われて、最大値が求められ、これは図１３の実施例では、セクション４５０ｅ，Ｃの最後から２列目もしくは８列目における要素５０８ｅである。この要素の値はやはり"2"であり、これはセクション３５０ｅで考慮されたユニットの個数と一致する。さらに別の選択肢として、積行列４５０ｅ，Ｃにおける１つの行の要素たとえば１行目の要素を、評価することもできる。両方のケースにおいて、最大値を有する要素はその列番号を介して、有効なパフォーマンスレベルをじかに表す。図１３の例では、車輪アクチュエータＨＲにおいてデグラデーションDegNが発生しているので、パフォーマンスレベル５となっており、このレベルは、デグラデーション行列Ｘのセクション３５０ｅの最後から２行目にも、ないしは依存関係行列のセクション１９０ｄの最後から２列目もしくは８列目にも、割り当てられている。
【０２０５】
行列ＸおよびＡ全体にわたって（転置されて）乗算されると、積行列４５０ｅもしくはＣの値が相応に高まり、その場合、最大値は、アプリケーション（ｉ）におけるユニットの個数と一致し、たとえば４である。たとえば図４を参照。この最大数に合わせて、あとで図１４を参照しながら説明するファンクションも、以降の計算のために整合される。式（８）も参照。
【０２０６】
図１４には、４つのユニットが考慮されるケースについて、積行列Ｃの要素を単純化するためのファンクションが示されている。デカルト座標系５５０には、ｘ軸５５２およびこの軸と直交するｙ軸５５４が含まれている。ファンクション５５６は以下のシーケンスを有する。すなわち、
・４よりも小さいすべてのｘ値に対しファンクション値０、
・ｘ値４およびそれよりも大きいｘ値に対しファンクション値１、ただし４よりも大きいファンクション値は、計算において場合によっては現れない。
【０２０７】
択一的なファンクション５５８の場合には、以下が適用される。すなわち、
・４よりも小さいすべてのｘ値に対しファンクション値０、
・ｘ値４に対しファンクション値１。
【０２０８】
たとえば２つのユニットだけしか考慮されないのであれば、図１２および図１３を参照、それに応じてファンクションは以下のように変更される。すなわち、
・２よりも小さいすべてのｘ値に対してファンクション値０、
・ｘ値２もしくは２よりも大きいｘ値に対してファンクション値１。
【０２０９】
ファンクション５５８は式（８）と一致している。たとえば整数のｘ値のみを用いることができる。
【０２１０】
図１５には、複数のアプリケーションから成るクラスタのパフォーマンスレベルを求める原理を表すテーブル５６０が示されている。
【０２１１】
たとえば、複数のアプリケーションから成る特定のクラスタのパフォーマンスレベルに関して、導入部で挙げたテーブル８の規定が適用される。
【０２１２】
テーブル５６０によって、この規定がいっそう明確になる。テーブル５６０には、以下の内容を有する列５６２〜５７０が含まれている。すなわち、
・列５６２は、１０から始まって値０に至るまで、クラスタパフォーマンスレベルの１０進数値を降順に示す。
・列５６４は、GREEN（緑色）から始まりYELLOW1〜YELLOW9を経てREDに至るまで、個々の行５８０〜６００におけるパフォーマンスレベルに関する言葉による説明を示す。
・列５６６は、クラスタにおいて最も重要な１つもしくは複数のアプリケーション（ｉ）のパフォーマンスレベルＰＬに該当し、ただしｉは自然数である。
・列５６８は、クラスタにおいて２番目に重要な１つもしくは複数のアプリケーション（ｉ）のパフォーマンスレベルＰＬに該当する。
・列５７０は、クラスタにおいて重要度の低い１つもしくは複数のアプリケーション（ｉ）のパフォーマンスレベルＰＬに該当する。
【０２１３】
テーブル５６０には、以下の内容を有する行５８０〜６００が含まれている。すなわち、
・行５８０は、値１０すなわちGREENのクラスタパフォーマンスレベルに該当する。この場合、列５６６，５６８，５７０には、内容"GREEN"，"GREEN"，"GREEN"が割り当てられており、つまり最も重要な１つ（または複数）のアプリケーションと、２番目に重要な１つ（または複数の）アプリケーションと、重要度の低いアプリケーションとは、それぞれパフォーマンスレベル"GREEN"を有していなければならない。
・行５８２は、値９すなわちYELLOW1のクラスタパフォーマンスレベルに該当する。この場合、列５７０のみが内容"YELLOW3,4"を有しており、つまり重要度の低いアプリケーションがパフォーマンスレベルYELLOW3またはYELLOW4を有している。
・行５８４〜５９６については、図１５に示したテキストを参照されたい。
・行５９８は、値１すなわちYELLOW9のクラスタパフォーマンスレベルに該当する。この場合、列５６６は内容"YELLOW9"を有し、列５６８は内容"RED"を有し、つまり最も重要な１つ（または複数）のアプリケーションは、パフォーマンスレベルYELLOW9を有し、あるいは２番目に重要な１つ（または複数）のアプリケーションは、パフォーマンスレベル"RED"を有する。
・行６００は、値０すなわちREDのクラスタパフォーマンスレベルに該当する。この場合、列５６６のみが内容"RED"を有しており、つまり最も重要な１つ（または複数）のアプリケーションがパフォーマンスレベルREDを有している。
【０２１４】
矢印６０２，６０４が表しているのは、テーブル５６０のベースとなるシステマティックである。これによれば、ある特定の個別パフォーマンスレベルを有するアプリケーションの重要度が上がるにつれて、クラスタのパフォーマンスレベルが下がっていく。たとえば、個別パフォーマンスレベルYELLOW6に関して、行５８８、５９０、５９２にわたり延びている矢印６０２、および個別パフォーマンスレベルREDに関して、行５９６，５９８，６００にわたり延びている矢印６０４を参照。
【０２１５】
テーブル８もしくは図１５による方法によって、クラスタパフォーマンス値について種々のパフォーマンスレベルを計算することができるようになる。そして最も小さいものすなわち最も悪いもの（WORSTファンクション）を、選択する必要がある。
【０２１６】
別の実施例として、クラスタパフォーマンスレベルに対し、これとは異なる規定を用いることができる。つまりたとえば、最も重要な１つ（または複数）のアプリケーションと、２番目に重要な１つ（または複数）のアプリケーションだけを関与させてもよいし、および／または、これよりも大きいまたは小さいもしくは異なるクラスタパフォーマンスレベルを用いてもよく、および／または、これよりも大きいまたは小さいもしくは異なる個別パフォーマンスレベルを用いてもよい。テーブル８もしくはテーブル５６０に従ったクエリを、一般的なプログラムによって、または別の態様で、実行することができる。
【０２１７】
図１６には、ファンクションクラスタのパフォーマンスを求める方法を実施する際のステップ７００〜７１２が示されている。この方法は処理ステップ７００から始まる。これらの処理ステップのことを、以下では短くステップと称する。
【０２１８】
ステップ７００の次にステップ７０２が続き、このステップにおいて、複数のユニット／ネットワークノードから成る１つのアプリケーション（ｉ）に対し、図１〜図１４を参照しながらすでに説明したように、個別パフォーマンスレベルａ，ｙ１，ｙ２が求められる。その際に、式（１）〜（９）を用いることができる。
【０２１９】
ステップ７０２の次に続くステップ７０４において、個別パフォーマンスレベルを計算すべきさらに別のアプリケーションがあるかについて、チェックされる。このことが当てはまるならば、ステップ７０４のすぐ次にステップ７０２が続き、その際、ｉが値１だけ高められる。
【０２２０】
これに対し、個別パフォーマンスレベルがすべてのアプリケーション（ｉ）について計算されていたならば、ステップ７０４の次にステップ７０６が続く。ステップ７０６において、たとえばテーブル８および図１５を参照しながら説明したように、複数のアプリケーションから成る１つのクラスタに対し、パフォーマンスレベルｚ１ａ，ｚ１ｂが求められ、さらに場合によってはｚ２ａ，ｚ２ｂ等も求められる。ただし別の実施例として、クラスタリングなしで作業してもよい。そのようなケースでは、マスタ／スレーブの選択のために、総パフォーマンス値ｙ１，ｙ２等がそのまま用いられる。
【０２２１】
ステップ７０６の次に続くステップ７０８において、クラスタパフォーマンスレベルを計算すべきさらに別のクラスタがあるか、についてチェックされる。このことが当てはまるならば、ステップ７０８のすぐ次にステップ７０６が続き、その際、クラスタを表す計数値が値１だけ高められる。
【０２２２】
これに対し、クラスタパフォーマンスレベルがすべてのクラスタについて計算されていたならば、ステップ７０８の次にステップ７１０が続く。ステップ７１０において、互いに冗長構成を成す少なくとも２つのクラスタに対するクラスタパフォーマンスレベルが、制御装置へ転送され、この制御装置はたとえば、どのクラスタを現時点でマスタクラスタとすべきか、すなわち輸送手段の動作のために重要なクラスタとすべきか、を決定する。この場合、それぞれ互いに冗長構成を成す複数のクラスタから成る複数のペアまたは複数のグループを設けてもよい。クラスタリングを行う場合であっても、クラスタリングを行わない場合であっても、制御装置をたとえば各チャネル１８，１８ｂに実装することができる。なお、クラスタリングを実施しない場合には、たとえばステップ７０８および７０６が省略される。
【０２２３】
その後、この方法を、ステップ７１２において終了させることができる。１つの実施例によれば、この方法は周期的に繰り返され、つまりステップ７１０の後、再びステップ７０２が続けられる。矢印７１４を参照。周期時間は、たとえば５０ｍｓよりも短い。
【０２２４】
これらの実施例は縮尺どおりに描かれているわけではなく、また、これらの実施例に限定されるものでもない。当業者であれば変更を行うことができる。有利な実施例に基づき図面に示しながら本発明について詳しく説明してきたが、本発明はここで開示した実施例に限定されるものではなく、当業者であれば本発明の権利範囲を逸脱することなく、さらに別の実施形態を導き出すことができる。導入部で挙げた発展形態および実施形態を、互いに組み合わせることができる。図面の説明において挙げた実施例も、互いに組み合わせることができる。さらに、導入部で挙げた発展形態および実施形態を、図面の説明で挙げた実施例と組み合わせることができる。
【図１】
0006377168.tif 000023
【図２】
0006377168.tif 000024
【図３】
0006377168.tif 000025
【図４】
0006377168.tif 000026
【図５】
0006377168.tif 000027
【図６】
0006377168.tif 000028
【図７】
0006377168.tif 000029
【図８】
0006377168.tif 000030
【図９】
0006377168.tif 000031
【図１０】
0006377168.tif 000032
【図１１】
0006377168.tif 000033
【図１２】
0006377168.tif 000034
【図１３】
0006377168.tif 000035
【図１４】
0006377168.tif 000036
【図１５】
0006377168.tif 000037
【図１６】
0006377168.tif 000038