Posts Issued on May 25, 2016

PMHFの意味

posted by sakurai on May 25, 2016 #10

PMHFの定義

ISO 26262 Part 5には以下のように定義されています。

9.4.2 Evaluation of Probabilistic Metric for random Hardware Failures (PMHF)

  • Average probability per hour over the operational lifetime of the item (アイテムの運転寿命にわたる時間当たりの平均確率) [2, Part 5 9.4.2.1]
  • Quantitative target values for the maximum probability of the violation of each safety goal at item level due to random hardware failures (ランダムなハードウェア故障によるアイテムレベルでの各安全目標の違反の最大確率の定量的な目標値) [2, Part 5 9.4.2.2]

どちらをとっても舌足らずであり、これら2つをまとめた次のような定義がPMHFの定義にふさわしいものです。

ランダムなハードウェア故障によるアイテムレベルでの、各安全目標の違反のアイテムの運転寿命にわたる時間当たりの平均確率目標値

PMHFの規格式

(10.1)はISO 26262 Part10に掲載されている、「安全機構に続いて指令ブロックの故障が引き起こされる可能性を考慮した」(※)場合のPMHF式です。

$$ M_\text{PMHF} = \lambda_\text{RF} + \frac 1 2 \lambda_\text{M,MPF}(\lambda_\text{SM,MPF,l}T_\text{lifetime}+ \lambda_\text{SM,MPF,d}\tau) \tag{10.1} $$

  • $\lambda_\text{RF}$: SMによる残余(VSG抑止されない)の、IFフォールトの故障率
  • $\lambda_\text{M,MPF}$: SMによるVSG抑止された、IFフォールトの故障率
  • $\lambda_\text{SM,MPF,l}$: 2nd SMで検出できないSMフォールトの故障率
  • $\lambda_\text{SM,MPF,d}$: 2nd SMで検出できるSMフォールトの故障率
  • $T_\text{lifetime}$: 車両寿命
  • $\tau$: 2nd SMの検査周期

(注:IFはIntended functionality=主機能、VSGはViolation of a Safety Goal=安全目標違反、SMはSafety Mechanism=安全機構、1st SMはVSG抑止のためのSM、2nd SMはLF抑止のためのSM、LFはLatent Fault=潜在フォールトです。)

ご注意頂きたいのは、これはPMHFの定義式ではないことです。ISO 26262では、(書かれていない)数学的な定義を前提として導出されたPMHFの結果式(10.1)だけが提示されており、導出過程や前提の説明がほとんどありません。従って、このブログでPMHF式の導出について説明していきたいと思います。

※その前に、FSマイクロ株式会社では、(10.1)が「安全機構が故障して次に主機能が故障する場合」という規格の前提は誤りと考えます。(10.1)式の第1項の$\lambda_\text{RF}$は、主機能が故障して安全機構が安全目標侵害を防止した残余(つまり侵害を防止できない部分)の故障率なので、安全機構は動作していなければならないはずです。よって、(10.1)の式の条件は、正しくは「主機能のフォールトで故障(SPF/RFもしくはDPF)となる場合」です。明らかに、(10.1)右辺の第1項がSPF/RFによる効果、第2項がDPFによる効果です。

原文は「MPMHF, considering the conditional probability that a failure of the safety mechanism is followed by a failure of the mission block」ですので、原文から誤っています。一方訳文にも問題があり、数学用語である条件付き確率(conditional probability)を正しく訳さずに可能性という曖昧な翻訳になっています。

PMHFの弊社による数学的定義

前述のように、ISO26262規格にはPMHFの数学的定義は書かれておらず、(10.1)の結果式のみが掲載されています。そのため、まず弊社によるPMHFの定義を示します。

PMHFとは、ランダムハードウェア故障のメトリック(数値目標)で、正確に表現すれば「アイテムの車両寿命における不稼働率($\approx$故障確率)の時間平均」となります。単なる故障確率ではなく、修理も含めた不稼働確率です。数学的に書くと(10.2)のとおりです。 $$ M_\text{PMHF} :=\frac{1}{T_\text{lifetime}} \Pr\{\text{item down at } T_\text{lifetime}\} \tag{10.2} $$

PUA

ここで、時刻$t$におけるitemの不稼働率(Point Unavailability; PUA)である$Q_\text{item}(t)$を考えます。 $Q_\text{item}(t)$は以下の式で定義される、ある時刻$t$においてアイテムが稼働していない確率です。

$$ Q_\text{item}(t):=\Pr\{\text{item down at } t\} \tag{10.3} $$ 従って、(10.3)を(10.2)に用いれば、PMHFは $$ M_\text{PMHF} :=\frac{1}{T_\text{lifetime}}Q_\text{item}(T_\text{lifetime}) \tag{10.4} $$ と表されます。一方、稼働率(Point Availability)$A_\text{item}(t)$は、(10.5)に示すように、1からPUAである$Q_\text{item}(t)$を引いたものです。 $$ A_\text{item}(t):=1-Q_\text{item}(t)\tag{10.5} $$ 稼働率はまた、修理が可能なitemにおいて、

  • 時刻$t$までに一度も故障が起きない確率と、
  • 時刻$t$以前に故障が起きて修理された後、時刻$t$までに故障が起きない確率

の2つの部分に分けられます。これを数式で書けば、 $$ A_\text{item}(t)=\Pr\{\text{item up at } t\} \\ =\Pr\lbrace{\text{item not failed in }(0, t]\rbrace} + \displaystyle \sum_{i=1}^{n} \Pr\lbrace{\text{item repaired at }\tau_i \cap \text{item up in }(\tau_i, t]\rbrace} \tag{10.6} $$ となります。(10.6)式の意味は、Point Availabilityは、Reliability(1度も故障しない確率)に加えて、各検査インターバルで故障検出を行い、検出された分については全て修理した上で、それが現在まで故障しない確率との和ということです。ここで注意すべき点は、検査は定期検査であることです。ISO 26262は定期検査・修理が前提となっています。

Point Availabilityに関してはQuality and Reliability of Technical Systemsの166ページに示されています。

図%%.1
図10.1 Point Availability

同著者の同内容が確認できます。この教科書では検査及び修理は分布関数により与えられるものとなっており、より一般的な議論となっています。

教科書等でよく現れるのは故障も修理もその確率過程が指数分布するパターンなのですが、ISO 26262は明白にかかれていないものの、故障確率過程は指数分布し、一方修理は定期検査・修理が前提です。この前提で安全目標侵害(VSG, violation of the safety goal)確率を考える必要があります。

PMHFの意味

ここで、(10.5)と(10.6)をPMHFの定義式(10.4)に代入すれば、 $$ M_\text{PMHF}=\frac{1}{T_\text{lifetime}}Q_\text{item}(T_\text{lifetime})=\frac{1}{T_\text{lifetime}}\left[1-A_\text{item}(T_\text{lifetime})\right]\\ =\frac{1}{T_\text{lifetime}}\left[1-\Pr\{\text{item not failed in }(0, T_\text{lifetime}]\}\right]\\ -\frac{1}{T_\text{lifetime}}\displaystyle \sum_\text{i=1}^{n} \Pr\{\text{item repaired at }\tau_i \cap \text{item up in }(\tau_i, T_\text{lifetime}]\}\\ =\frac{1}{T_\text{lifetime}}\Pr\{\text{item failed in }(0, T_\text{lifetime}]\}\\ -\frac{1}{T_\text{lifetime}}\displaystyle \sum_{i=1}^{n} \Pr\{\text{item repaired at }\tau_i \cap \text{item up in }(\tau_i, T_\text{lifetime}]\} \tag{10.7} $$ (10.7)のうち、第2項である修理される部分を一旦無視すれば、$X_\text{item}$を無故障運転時間を表す確率変数(random variable)としたとき、CDF(Cumulative Distribution Function)である$F(t)$を用いて、 $$ M_\text{PMHF}\approx\frac{1}{T_\text{lifetime}}\Pr\{\text{item failed in }(0, T_\text{lifetime}]\}\\ =\frac{1}{T_\text{lifetime}}\Pr\{X_\text{item}\lt T_\text{lifetime}\}=\frac{1}{T_\text{lifetime}}F_\text{item}(T_\text{lifetime})\tag{10.8} $$ (10.8)に対して、不信頼度$F(t)$の近似式である(7.2)を用いて $$ F_\text{item}(t)=1-e^{-\lambda_\text{item}t}\approx \lambda_\text{item}t, ~~\mbox{s.t.}~~ \lambda_\text{item}t \ll 1 \tag{10.9} $$ を適用すれば、次の(10.10)が得られます。 $$ M_\text{PMHF}\approx\lambda_\text{item},~~\mbox{s.t.}~~\lambda_\text{item}T_\text{lifetime}\ll 1\tag{10.10} $$ これにより、PMHFは$\lambda_\text{item}T_\text{lifetime} \ll 1$の場合に「アイテムの車両寿命間の平均的な故障率」とみなすことができます。

ここで、先に無視した修理分を含めれば、その故障率は(10.7)の第2項の修理分だけ下がるため、それを合わせればPMHFは(10.4)のように「アイテムの車両寿命間の平均的な不稼働率」と一般化されます。

※このブログは2016年に書かれたものであり、新しい研究結果を以下に連載していますので、参考にしてください
http://fs-micro.com/blogSummary/#/blogSummary/tab/PMHF+derivation.html


左矢前のブログ 次のブログ右矢