Posts Tagged with "PMHF"

既に発行済みのブログであっても適宜修正・追加することがあります。
We may make changes and additions to blogs already published.
posted by sakurai on February 3, 2021 #356

積分公式に引き続き、次の(356.1)及び(356.2)について、あらかじめ結果を導出しておき、積分公式として使用します。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)dt\tag{356.1} $$ 及び $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(u)dt,\ \ s.t.\ \ u:=t\bmod\tau\tag{356.2} $$ まず、(356.1)式に、$R_\text{SM}(t)=e^{-\lambda_\text{SM}t}$を代入し、 $$ \require{cancel} \begin{eqnarray} (356.1)&=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}e^{-\lambda_\text{SM}t}dt=\frac{1}{T_\text{lifetime}}\left[-\frac{e^{-\lambda_\text{SM}t}}{\lambda_\text{SM}}\right]^{T_\text{lifetime}}_0\\ &=&\frac{1}{T_\text{lifetime}\lambda_\text{SM}}\left(1-e^{-\lambda_\text{SM}T_\text{lifetime}}\right)\\ \end{eqnarray}\tag{356.3} $$ ここで$\lambda t\ll 1$の条件で$e^{-\lambda t}$のMaclaurin展開は $$e^{-\lambda t}=1-\lambda t + \frac{1}{2}\lambda^2 t^2-O((\lambda t)^3)$$であるから、$O((\lambda t)^3)\approx 0$と近似し、これを(356.3)に代入すると(356.3)は、 $$ \begin{eqnarray} (356.3)&\approx&\frac{1}{\bcancel{T_\text{lifetime}\lambda_\text{SM}}}\left(\bcancel{\lambda_\text{SM}}\bcancel{T_\text{lifetime}}-\frac{1}{2}\lambda_\text{SM}^\bcancel{2}T_\text{lifetime}^\bcancel{2}\right)\\ &=&1-\frac{1}{2}\lambda_\text{SM}T_\text{lifetime} \end{eqnarray}\tag{356.4} $$ 以上から次のように(356.1)の値が求められました。

$$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)dt\approx1-\frac{1}{2}\lambda_\text{SM}T_\text{lifetime}\tag{356.5} $$ 次に(356.2)は、 $$ \begin{eqnarray} (356.2)&=&\frac{1}{T_\text{lifetime}}\sum_{i=0}^{n-1}\int_{i\tau}^{(i+1)\tau}e^{-\lambda_\text{SM}u}du =\frac{n}{T_\text{lifetime}}\int_0^\tau e^{-\lambda_\text{SM}u}du\\ &=&\frac{\bcancel{n}1}{\bcancel{T_\text{lifetime}}\tau}\left[\frac{e^{-\lambda_\text{SM}u}}{-\lambda_\text{SM}}\right]^{\tau}_0 =\frac{1}{\tau\lambda_\text{SM}}\left(1-e^{-\lambda_\text{SM}\tau}\right) \end{eqnarray}\tag{356.6} $$ ここで同様に、$$e^{-\lambda t}\approx1-\lambda t + \frac{1}{2}\lambda^2 t^2$$を用いて、 $$ \begin{eqnarray} (356.3)&\approx&\frac{1}{\bcancel{\tau\lambda_\text{SM}}}\left(\bcancel{\lambda_\text{SM}}\bcancel{\tau}-\frac{1}{2}\lambda_\text{SM}^\bcancel{2}\tau^\bcancel{2}\right)\\ &=&1-\frac{1}{2}\lambda_\text{SM}\tau \end{eqnarray}\tag{356.7} $$ 以上から次のように(356.2)の値が求められました。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(u)dt\approx1-\frac{1}{2}\lambda_\text{SM}\tau,\ \ s.t.\ \ u:=t\bmod\tau\tag{356.8} $$


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

PMHF導出法の変更

posted by sakurai on February 2, 2021 #355

動機

長い間MPF detectedの扱いに疑問が潜在していました。弊社では、MPF detectedは結局修理されないので、いつの日か2つ目のSMのフォールトによりDPFとなると考えます。するとMPF detectedは結局MPF latent (=LF)となるとした上でPMHF式を導出しています。しかしながら、この考え方には、次の2点の問題があります。

  • 規格のフォールト分類フローでは、MPF detectedとMPF latentが分離されているにも関わらず、弊社ではどちらもMPF latentと扱っているため、規格のフォールト分類と矛盾する。
  • 規格LFMの計算式にMPF detectedが入っていない。これは、規格はMPF detectedは安全側だと考えているためだと推測されるが、弊社では上記の理由から危険側としている。

そこで、これらを満足する方法を検討します。最初の論文で導入された、SM1による検出率を意味する次の条件付き確率$K_\text{det}$を、ここで再び使用します。 $$ K_\text{det}:=\Pr\{\text{Fault detected}\ |\ \text{Fault prevented}\}\tag{355.1} $$

これはFMCというよりも、アーキテクチャ的に次のように0または1の値をとります。

  • 検出系(非冗長系):1st SMはIFのフォールトを検出することによりVSG抑止を行う場合。この場合は検出するから抑止されるのであり、抑止される部分に対する検出される割合は100%です。すなわち$K_\text{det}=1$となります。
  • 冗長系:1st SMはIFの代替機能を持つことによりVSG抑止を行う場合。この場合はVSG抑止はしますが、1st SMは一切検出を行いません。従って、抑止される部分の検出される割合は0%です。すなわち$K_\text{det}=0$となります。また、両チャネルが同時にフォールトすることは無いため、VSG抑止率は100%、すなわち$K_\text{IF,RF}=1$となります。

さて、MPF detectedの考え方ですが、主機能のVSGが抑止されているので、運転はできないかもしれないものの、とりあえず安全状態は保たれます。従ってSPFもDPFも発生しません。しかるべき時間後に(レッカー車で)修理工場へ持っていき、修理が行われ、その後に運転が継続できると考えます。

主機能は動作しないので、通電はされず、運転時間は増大しません。従って、故障から修理までの時間は無視することができるので、1st SMにより検出された故障は瞬間的に修理された=故障が起きなかったのと等価です。

やや無理がある解釈の感がありますが、今回このように仮定してPMHF式の導出を進めることにします。 ブログ記事#361に続きます。

弊社では、MPF detectedの再考に基づくPMHF式に関する論文をRAMS 2022に投稿予定であることから、ブログの一部を非開示(セミナー内でのご紹介と表示)としました。RAMS 2022で論文が採択・発表された後(2022年2月頃)に公開予定です。


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

posted by sakurai on January 26, 2021 #351

前稿の式を評価します。

$$ A_\text{SM}(t)=R_\text{SM}(t)+K_\text{SM,FMC,MPF}\left[-R_\text{SM}(t)+R_\text{SM}(u)\right]\\ =R_\text{SM}(t)+K_\text{SM,FMC,MPF}\left[F_\text{SM}(t)-F_\text{SM}(u)\right]\ \text{s.t. }u:=t-n\tau=t-\lfloor\frac{t}{\tau}\rfloor\tau\tag{351.1} $$ 教科書等のとおり、稼働度は信頼度と修理度の和で表され、(351.1)式の$$ K_\text{SM,FMC,MPF}\left[F_\text{SM}(t)-F_\text{SM}(u)\right] $$ は修理度を意味します。この式は、最期の区間を除いた全ての区間において起きた検出可能フォールトは、その検査周期の最後で完全に修理され、最後の区間のみが修理が行われないことを表しています。

このように、修理度は故障した部分に基づき不信頼度で表すのが便利なので、(351.1)のように、稼働度は信頼度と不信頼度で表されます。

一方、不稼働度は、 $$ Q_\text{SM}(t)=1-A_\text{SM}(t)=F_\text{SM}(t)-K_\text{SM,FMC,MPF}\left[F_\text{SM}(t)-F_\text{SM}(u)\right]\\ \ \text{s.t. }u:=t-n\tau=t-\lfloor\frac{t}{\tau}\rfloor\tau\tag{351.2} $$ のように、不信頼度とマイナスの修理度の和で表されるので、結果として不稼働度は(351.2)のように不信頼度のみで表されます。


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

posted by sakurai on January 25, 2021 #350

3. 稼働度の定義からの導出

ついでに既出ですが、リペアラブルエレメントの不稼働度$Q(t)$の数式的な求め方を示します。基本的にはブログ記事に示す導出方法です。

$$ Q_\text{SM}(t):=\Pr\{\text{(repairable)SM down at }t\}=1-A_\text{SM}(t)\tag{350.1} $$ 一方、稼働度は、 $$ A_\text{SM}(t):=\Pr\{\text{(repairable)SM up at }t\}\\ =R(t)+\int_0^t m(x)R(t-x)dx\tag{350.2} $$ ここで、$A(t)$は時刻tにおけるポイントアベイラビリティ、$R(t)$は時刻tにおけるリライアビリティ(信頼度)、$m(t)$は時刻tにおけるリニューアル密度(修理密度)です。

規格に従えば、修理周期は教科書一般にあるように指数関数分布はとらず、定期的に$\tau$毎に行われるため、稼働度として(350.2)は(350.3)と表せます。ここで、$i$は$i$番目の定期検査・修理を意味し、時刻$t$までに$n$回の定期検査・修理が行われるものとします。 $$ A_\text{SM}(t)=R_\text{SM}(t)+K_\text{SM,FMC,MPF}F_\text{SM}(\tau)\sum_{i=1}^n R_\text{SM}(t-i\tau)\tag{350.3} $$ ここで、$K_\text{SM,FMC,MPF}$は少々長いので、以降は$K_\text{SM,MPF}$と省略します。PMHFの議論中のKはFMC(Failure Mode Coverage)に決まっているためです。

修理分$K_\text{SM,MPF}F_\text{SM}(\tau)$が時刻$t$の関数でないのは、検出能力$K_\text{MPF}$は一定で、かつ毎回の故障確率も一定で、検出した分は全て修理されるため、修理分が一定となるためです。(350.3)式の総和を展開すれば、 $$ \require{cancel} A_\text{SM}(t)=R_\text{SM}(t)+K_\text{SM,MPF}\left[1-R_\text{SM}(\tau)\right]\cdot\\ \left[R_\text{SM}(t-\tau)+R_\text{SM}(t-2\tau)+...+R_\text{SM}(t-(n-1)\tau)\right]\\ =R_\text{SM}(t)+K_\text{SM,MPF}\left[\bcancel{R_\text{SM}(t-\tau)}-R_\text{SM}(t)\\ +\bcancel{R_\text{SM}(t-2\tau)}-\bcancel{R_\text{SM}(t-\tau)}\\ ...\\ +R_\text{SM}(t-n\tau)-\bcancel{R_\text{SM}(t-(n-1)\tau)}\right]\\ =R_\text{SM}(t)+K_\text{SM,MPF}\left[-R_\text{SM}(t)+R_\text{SM}(t-n\tau)\right] \tag{350.4} $$ ここで、$u:=t-n\tau$とパラメータ$u$を定義し、(350.1)に(350.4)を代入すれば、 $$ Q_\text{SM}(t)=1-A_\text{SM}(t)=F_\text{SM}(t)-K_\text{SM,MPF}\left[F_\text{SM}(t)\bcancel{-1}+\bcancel{1}-F_\text{SM}(u)\right]\\ =\img[-1.35em]{/images/withinseminar.png} \tag{350.5} $$ 以上から、(348.1)(349.3)、(350.5)で示されたように、導出手法は異なっても同一のPUA方程式が導出されることがわかります。

このリペアラブルエレメントの不稼働度$Q(t)$(350.5)及び、それを時間微分した不稼働密度$q(t)$の方程式(350.6)は、PMHF方程式の導出の根幹です。

$$ q_\text{SM}(t)=\frac{dQ_\text{SM}(t)}{dt}=(1-K_\text{SM,MPF})\frac{dF_\text{SM}(t)}{dt}+K_\text{SM,MPF}\frac{dF_\text{SM}(u)}{du}\frac{du}{dt}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{350.6} $$


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

posted by sakurai on January 22, 2021 #349

2. 愚直に場合分けする導出法

前稿のようにエレガントに導出するのではなく、全ての場合を愚直に場合分けすることを行います。そのほうが抜け漏れが防止でき、確実そうです。

図347.1
図347.1 定期検査と時刻$t$の関係

ただし、任意の検査時刻$\tau_i,\ i=1,...,n$で考えると、区間がn+1個、検査がn回であるため、区間$[\tau_{i-1}, \tau_i)$でのフォールトの生起有/無が$2^{(n+1)}$とおり、検査時点$\tau_i$でのフォールト検出可/不可が$2^n$とおりあるので、検討の組み合わせが$2^{(2n+1)}$とおりと膨大になります。

ところが幸いなことに、フォールト検出は確率的に行われるのではなく、アーキテクチャ的に行われる前提です(ブログ記事の前提の2項を参照)。従って、いつフォールトが起きてもその次の周期での検査(時刻=$\tau_i$)ではなく、最近の検査(時刻=$\tau_n$)まで検査を遅延させても、時刻$t$での不稼働確率は同じはずです。

従って、フォールトの生起を単に「生起」、フォールトの検出を単に「検出」と省略して書けば、最近の検査までの生起の有/無最近の検査での検出の可/不可その後の生起の有/無の$2^3$とおりを考えれば良いわけです。この絞り込みは愚直とは言えず、むしろエレガントかもしれませんが。

この絞り込みを表現するために、3つ組記法を考え、

 (($0$から$\tau_n$までの生起の有/無),($\tau_n$での検出の可/不可),($\tau_n$からtまでの生起の有/無))

の全ての組み合わせを考えます。有/無や可/不可をYes(有)/No(無)で表せば、全ての場合は$2^3$とおりあり、

 1. (Yes, Yes, Yes)
 2. (Yes, No, Yes)
 3. (Yes, Yes, No)
 4. (Yes, No, No)
 5. (No, Yes, Yes)
 6. (No, No, Yes)
 7. (No, Yes, No)
 8. (No, No, No)

の8とおりです。このうち、時刻$t$でSMが不稼働状態になるのは、

 1. (Yes, Yes, Yes)⇒不稼働
 2. (Yes, No, Yes)⇒不稼働
 3. (Yes, Yes, No)
 4. (Yes, No, No)⇒不稼働
 5. (No, Yes, Yes)⇒不稼働
 6. (No, No, Yes)⇒不稼働
 7. (No, Yes, No)
 8. (No, No, No)

の1, 2, 4, 5, 6の5とおりです。これらの不稼働になる場合を、真ん中の検出可(=Yes)でまとめれば、

 1. (Yes, Yes, Yes)⇒不稼働
 5. (No, Yes, Yes)⇒不稼働

の2とおりとなります。検出可の条件で不稼働となる確率は、上記の2とおりであり、検出可かつ時間$(\tau_n, t]$でのフォールトとなるので、この条件での時刻$t$での不稼働確率は、次の確率式 $$ \Pr\{\text{fault detected at }\tau_n\ \cap\ \text{SM recieves a fault in }(\tau_n, t]\}\tag{349.1} $$ で表されます。

一方、真ん中の検出不可(=No)でまとめれば、

 2. (Yes, No, Yes)⇒不稼働
 4. (Yes, No, No)⇒不稼働
 6. (No, No, Yes)⇒不稼働

の2, 4, 6の3とおりとなります。検出不可の条件で不稼働となる確率は、上記の3とおりであり、検出不可かつ$(0, t]$でのフォールトとなるので、この条件での時刻$t$での不稼働確率は、次の確率式 $$ \Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM recieves a fault in }(0, t]\}\tag{349.2} $$ で表されます。

以上から、検出の可不可は排他であるため確率は足すことができ、生起と検出は独立事象であるため、不稼働度は、(349.1)と(349.2)を用いて $$ Q_\text{SM}(t)\equiv\Pr\{\text{SM is down at }t\}\\ =\Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM recieves a fault in }(0, t]\ \cup\\ \text{fault detected at }\tau_n\ \cap\ \text{SM recieves a fault in }(\tau_n, t]\}\\ =\Pr\{\text{fault not detected at }\tau_n\}\Pr\{\text{SM recieves a fault in }(0, t]\}\\ +\Pr\{\text{fault detected at }\tau_n\}\Pr\{\text{SM recieves a fault in }(\tau_n, t]\}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{349.3} $$ と導出されます。


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

posted by sakurai on January 21, 2021 #348

1. エレガントな導出法

図347.1において、SMが$t$においてダウンしている確率を考えます。SMに起こったフォールトが、任意の$\tau_i$で2nd SMにより検出可能か不可能かで分類します。

  • 検出可能な場合:時刻$0$から$\tau_n$未満の間にフォールトが起きる場合、次の定期検査$\tau_i\ (i=1,...,n)$の時点で検出され修理されるので、最近の検査時刻$\tau_n$でフォールトはありません。あるいは、フォールトが起きない場合も$\tau_n$の時点ではフォールトはありません。従って、時刻$t$でダウンしている確率は$\tau_n$から$t$までの間にフォールトが起きる場合に限られます。
  • 検出不可能な場合:2nd SMが無いのと同じことであるため、全ての時間=時刻$0$から$t$までの間にフォールトが起きる確率が、時刻$t$でダウンしている確率となります。

以上を合わせ、SMが時刻$t$でダウンしている確率を求めます。不稼働事象は上記事象のORであり、検出の可不可は排他であるため確率は足すことができ、フォールトの生起と検出可不可は独立事象であるため、不稼働度は、

$$ Q_\text{SM}(t)\equiv\Pr\{\text{SM is down at }t\}\\ =\Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM recieves a fault in }(0, t]\ \cup\\ \text{fault detected at }\tau_n\ \cap\ \text{SM recieves a fault in }(\tau_n, t]\}\\ =\Pr\{\text{fault not detected at }\tau_n\}\Pr\{\text{SM recieves a fault in }(0, t]\}\\ +\Pr\{\text{fault detected at }\tau_n\}\Pr\{\text{SM recieves a fault in }(\tau_n, t]\}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{348.1} $$ と導出されます。


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

不稼働度$Q(t)$について

posted by sakurai on January 20, 2021 #347

不稼働度$Q(t)$の導出準備

定期検査を持つリペアラブルエレメントの不稼働度(Unavailability, PUA)$Q(t)$の方程式は、世界で初めて弊社が導出したものです。このリペアラブルエレメントの不稼働度$Q(t)$の導出について解説します。

定義

不稼働度の定義は(66.10)に示します。

前提

一般にはSMにフォールトが起きても直ちにVSGとならないため、意図機能が動作している間に修理が可能であり、これをリペアラブルエレメントと言います。

図%%.1
図347.1 定期検査と時刻$t$の関係

図347.1のように、2nd SMによるSMに対する定期検査が、周期$\tau$で行われます。$i$番目の検査時刻は$\tau_i,\ i=1, ..., n$です。このときのSMの、時刻$t$での不稼働度を考えます。最近の検査時刻を$\tau_n$とすれば、 $$ \tau_n=n\tau=\lfloor\frac{t}{\tau}\rfloor\tau\tag{347.1} $$

前提をまとめると以下のようになります。

  • 定期検査・修理を実施する。検査周期は$\tau$(定数)とする。ただし、ISO 26262においてはフォールト発生からドライバーが警告ランプに気づいて修理工場へ運び、修理が完了するまでの時間間隔となります。従って厳密には検査周期ではなく、これら時間間隔の総和であり、規格ではこれらを合わせたものを露出時間と呼びます。
  • 2nd SMには診断カバレージ(DC)があるものの、フォールト検出は確率的に行われるのではなく、被検査対象のうちSMにより検出できる部分のフォールトは必ず検出され、非検出部分のフォールトは必ず非検出となるものとする。このDCを$K_\text{FMC,MPF}$で表す。

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

posted by sakurai on January 19, 2021 #346

第5節は、前節で求めたPMHFの評価です。図のレイアウト上、空白が多めになっています。

図%%.1

規格はケース見落としにより、過剰なPMHFの見積もりとなっています。ということは保守的な見積もりであるため、安全側ではありますが、EOTTIとしてはその過剰見積もりが厳しい設計制約として見えてきます。

上図左は弊社による、EOTTIの最大値を示す不等式です。一方、上図右は、2nd editionに掲載されているEOTTIの最大値を示す不等式です。表に示すように、規格自体に含まれている例で計算すると、規格がPMHFを過大に見積もっていることから、EOTTIも過小見積もりとなっています。正しくは965時間で良いのに、規格式では31時間となり、その倍率は31倍ともなります。

結論として、規格に従えば、PMHFが保守的な見積もりであることから、EOTTIに関して31倍も設計が厳しくなります。


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

posted by sakurai on January 12, 2021 #344

第4節は弊社の導出したPMHF式を2つ示しています。IFU、IFRの2つのモデルを構築し、それぞれのモデルに基づいて確率微分方程式を立てます。それを解くことにより、PMHF方程式を求めます。

図%%.2

IFUモデルから求められたPMHF式は、1st editionの規格式とは完全に一致しました。一方、IFRモデルから求めると、2nd editionの規格式と一致しませんでした。その理由は、2nd editionの規格式は場合分けを行っており、それはIFもしくはSM1のいずれか(後からフォールトする方)がアンリペアラブルであるという前提になっているからです。

本来両方がリペアラブルである必要があり、いずれか片方がアンリペアラブルというのは不当な制約です。実際にIFがフォールトしてLFとなり、2nd SMにより検出され修理され、次にSM1がフォールトしてLFとなり、2nd SMにより検出され、修理工場で修理されるというシーケンスがカバーされていません。


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

posted by sakurai on January 11, 2021 #343

第3節はモデルの構築です。ここで言うモデルは、構造動作の2つの側面を持ちます。

図%%.2

構造は、左端図に示すとおり規格第2版に掲載されているもので、一種類のみです。

  • 主機能であるIFと、
  • 主機能がVSGとなるフォールトを抑止するための1st SMで、かつ主機能がLFとなることを抑止するための2nd SMであるSM1と、
  • SM1がLFとなることを抑止するための2nd SMであるSM2

の3つのエレメントからなるものです。ここでは2つのモデルを構築しますが、構造は2つのモデルに共通です。

一方、動作は2とおりあります。その動作を連続時間系マルコフ連鎖で表したものが中及び右図です。SM2はフォールトしないので、フォールトの可能性は両方無し、IFのみ、SM1のみ、及びIF、SM1両方の4通りです。フォールト無しをグリーンのOPRステート、片方のみがフォールトしているのを黄色のLAT1またはLAT2ステート、両方がフォールトするDPFステートをDPF1またはDPF2ステートで表します。SPFステートは例外的に、IFに起きる単一フォールトがVSGとなるときに移行するステートです。

動作の違いは右図の赤丸で示した遷移のみであり、IFUモデルの動作が、IFがアンリペアラブルなのに比べてIFRモデルの動作は、IFはリペアラブルです。そのため、IFRモデルにおいては、IFのフォールトによりLAT1ステートに移行しても、2nd SMにより検出可能である場合は、修理によりOPRステートに戻ります。


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


ページ: