Posts Tagged with "average PUD"

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

米国ロチェスター大学の資料(そのキャッシュ)によれば、 ランダムプロセス$\eta_t$において、ステート空間を$i, j=0,1,2,...,\in\mathcal{E}$について、以下の式を満足する場合に、ランダムプロセス$\eta_t$は連続時間マルコフ連鎖(CTMC)となります。 $$ \Pr\{\eta_{(t+s)}\in j\ |\ \eta_t\in i, \eta_u\in x_u, u\lt t\}=\Pr\{\eta_{(t+s)}\in j\ |\ \eta_t\in i\} $$ 遷移する確率が、過去の時刻$u$での状態に依存せず、現在時刻$t$での状態にのみ依存することを表します。

CTMCである$\eta_t$において、ステートiからjへの瞬間遷移確率関数(Instantanous Transition Probability Function)$P_{ij}$の式は以下のようになります。ただし、元の式を「信頼性関係式の定義式の表現」で導入した記法に変更しています。 $$ P_{ij}(t):=\Pr\{\eta_{(t+dt)}\in\mathcal{j}\ |\ \eta_{t}\in\mathcal{i}\}=q_{ij}dt+o(dt)\tag{101.1} $$ $q_{ij}$は遷移率(Transition Rate)です。ランダムプロセス$\eta_t$において、確率変数$X$を無故障稼働時間とします。$\mathcal{M}$を稼働状態のサブセットとし、$\mathcal{P}$を不稼働状態のサブセットとすれば、$X=\inf\{t:\eta_{t}\in\mathcal{P}\}$と示すことができます。

稼働状態$\mathcal{M}$から不稼働状態$\mathcal{P}$への遷移を考えると、(101.1)は、 $$ P_\mathcal{MP}(t)=\Pr\{\eta_{(t+dt)}\in\mathcal{P}\ |\ \eta_{t}\in\mathcal{M}\}=q_\mathcal{MP}dt+o(dt)\tag{101.2} $$ となりますが、これと前記事の微小ダウン確率形式と比較し、 $$ \Pr\{\eta_{(t+dt)}\in\mathcal{P}\ |\ \eta_{t}\in\mathcal{M}\}=q_\mathcal{MP}dt+o(dt)=\varphi(t)dt\tag{101.3} $$ すなわち、単位時間あたりの稼働状態$\mathcal{M}$から不稼働状態$\mathcal{P}$への遷移率$q_\mathcal{MP}$は、$o(dt)\approx 0$の場合のダウン率$\varphi(t)$にほかなりません。

ここで、条件付き確率の式から(101.3)の両辺に状態確率$\Pr\{\eta_{t}\in\mathcal{M}\}$をかけるとPUDが求まります。PUDについて、$0$から$T_\text{lifetime}$まで$t$で積分し(101.2)を用いれば、 $$ \int_0^{T_\text{lifetime}}P_\mathcal{MP}(t)\Pr\{\eta_{t}\in\mathcal{M}\} =\int_0^{T_\text{lifetime}}\Pr\{\eta_{(t+dt)}\in\mathcal{P}\ |\ \eta_{t}\in\mathcal{M}\}\Pr\{\eta_{t}\in\mathcal{M}\}\\ =\int_0^{T_\text{lifetime}}\Pr\lbrace\eta_{(t+dt)}\in\mathcal{P}\cap \eta_{t}\in\mathcal{M}\rbrace=\int_0^{T_\text{lifetime}}q(t)dt =Q({T_\text{lifetime}})\tag{101.4} $$ 前記事の平均PUD式(66.13)に基づき(101.4)の両辺を$T_\text{lifetime}$で割り、SPFになる平均PUDを$\overline{q_{\mathrm{SPF}}}$で表せば、 $$ \overline{q_{\mathrm{SPF}}}=\frac{1}{T_\text{lifetime}}Q({T_\text{lifetime}})=\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\eta_{(t+dt)}\in\mathcal{P}\ |\ \eta_{t}\in\mathcal{M}\}\Pr\{\eta_{t}\in\mathcal{M}\}\\ =\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\eta_{(t+dt)}\in\mathcal{P}\cap\eta_{t}\in\mathcal{M}\} \tag{101.5} $$ これにより、CTMCを用いた平均PUDを求める基本式が求まりました。PMHFを求めるには、(101.5)式を駆使していきます。

RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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

posted by sakurai on October 25, 2019 #173

ニュースリリースでも明らかにしたように、このブログで研究してきたPMHFの一般式が、RAMS 2020に採択されました。ブログにおいて機能安全の知識は前提として良いので、注釈を取り除き、逆にブログとの関連の注釈☆をつけて再掲します。リリース文を茶色、注釈を青色で表示します。

なお、RAMS 2020に投稿中だったため、最新の研究#103~108を非開示としていましたが、今回採択が決定したので、RAMS 2020終了後(2020年2月頃)に公開予定です。


図%%.1

ISO 26262機能安全コンサルティングを提供するFSマイクロ株式会社(本社:名古屋市)代表取締役社長 桜井 厚の論文が、2019年10月19日、IEEE Reliability Society主催の国際学会である第66回RAMS(RAMS 2020)に採択されました。RAMS 2020は、2020年1月27日から30日まで、アメリカ・カリフォルニア州パームスプリングスのマリオット・ルネッサンスにて開催予定です。(☆1月30日最終日の12:15~14:15に開催されるコロキアムセッションにて発表します。)

図%%.2

論文の題名は「Generic Equations for a Probabilistic Metric for Random Hardware Failures According to ISO 26262」です。邦題は「ISO 26262に準拠したランダムハードウェア故障の確率的メトリクスの一般式」であり、ランダムハードウェア故障の確率的メトリクス(PMHF)を正確に評価することを可能にするものです。(☆上記にもあるように、本ブログでは#103~108で書きましたが、暫定非公開中です。⇒RAMS 2020が終了したので、当該記事を公開に変更しました。)

2011年に車載電子機器における機能安全の国際規格であるISO 26262の初版が、また、2018年には改訂版が発効されました。この規格改訂版においてはPMHF式が変更されていますが、PMHF値の数学的な定義や、エレメントの前提条件が明確ではありませんでした。(☆エレメントの前提条件とは具体的には修理可能性のことです。規格初版と規格改定版で、この修理可能性の前提を変えていると推測します。) 本論文ではこれらの点を明確にし、さらに規格に準拠した周期的な検査が行われるエレメントの不稼働確率式を初めて明らかにしました。 (☆不稼働確率については前記事に記載しています。)

これに基づき、一般的なサブシステムに関するPMHF式を新たに導出しました。本論文によりPMHF値を正確に評価できるため、広範な車載ECUにおいて、適正な安全設計を実施することが可能となります。また、緊急操作許容時間間隔(EOTTI)に関する過剰な設計制約を軽減できるため、自動運転システムに代表される耐故障システムにおいて、設計工期の短縮や製品コストの低減が可能となります。 (☆EOTTIの31倍の過剰見積もりについては前記事に記載しています。)

商号      FSマイクロ株式会社
代表者     桜井 厚
設立年月日   2013年8月21日
資本金     3,200万円
事業内容    ISO 26262車載電子機器の機能安全のコンサルティング及びセミナー
本店所在地   〒460-0011
        愛知県名古屋市中区大須4-1-57
電話      052-263-3099
メールアドレス info@fs-micro.com
URL      http://fs-micro.com


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

posted by sakurai on July 9, 2019 #126

さて、前稿平均PUD計算は簡易的に、冗長システムの確率の1/2として求めましたが、厳密には、

例えば全ての部品を二重化しておき、片方が壊れてももう片方がそれを引き継ぐことができる

という、スタンバイシステムについて平均PUD計算する必要があります。常に両方が稼働する冗長(2重化)と異なり、主系がフォールトしたときに初めて従系が稼働するものです。

IF、SM1からなるサブシステムがあり、IF、SM1の両方ともアンリペアラブルだとします。それぞれの故障率は、$\lambda_\text{IF}$及び$\lambda_\text{SM}$とします。上記のように、IFもSM1も$t=0$から同時に動作している冗長系ではなく、時刻$t$において主系であるIFがダウンし、即座にスタンバイ系であるSM1が引き続いて動作するものとします。

すると、車両寿命$T_\text{lifetime}$における稼働度(Availability)は、IFが$T_\text{lifetime}$までにダウンしないか、あるいは、途中の時刻$t$でダウンしたとしても、そこからSM1が$T_\text{lifetime}$までダウンせずに稼働する確率なので、

$$ A_\text{subsystem}(T_\text{lifetime})=\Pr\{\text{IF not failed at }T_\text{lifetime}\}\\ +\int_0^{T_\text{lifetime}}\Pr\{\text{IF fails in }(t + dt]\cap\text{IF not failed at }t\cap\text{SM not failed in }(T_\text{lifetime}-t]\}\\ =R_\text{IF}(T_\text{lifetime})+\int_0^{T_\text{lifetime}}R_\text{SM}(T_\text{lifetime}-t)F_\text{IF}(t)dt\\ =R_\text{IF}(T_\text{lifetime})+\int_0^{T_\text{lifetime}}e^{-\lambda_\text{SM}(T_\text{lifetime}-t)}\lambda_\text{IF}e^{-\lambda_\text{IF}t}dt\\ =R_\text{IF}(T_\text{lifetime})+\lambda_\text{IF}e^{-\lambda_\text{SM}T_\text{lifetime}}\int_0^{T_\text{lifetime}}e^{-(\lambda_\text{IF}-\lambda_\text{SM})t} dt\\ =R_\text{IF}(T_\text{lifetime})+\lambda_\text{IF}e^{-\lambda_\text{SM}T_\text{lifetime}}\left[\frac{e^{-(\lambda_\text{IF}-\lambda_\text{SM})t}}{-(\lambda_\text{IF}-\lambda_\text{SM})}\right]_0^{T_\text{lifetime}}\\ =R_\text{IF}(T_\text{lifetime})+\lambda_\text{IF}e^{-\lambda_\text{SM}T_\text{lifetime}}\left[\frac{1-e^{-(\lambda_\text{IF}-\lambda_\text{SM})T_\text{lifetime}}}{\lambda_\text{IF}-\lambda_\text{SM}}\right]\\ =R_\text{IF}(T_\text{lifetime})+\frac{\lambda_\text{IF}}{\lambda_\text{IF}-\lambda_\text{SM}}(e^{-\lambda_\text{SM}T_\text{lifetime}}-e^{-\lambda_\text{IF}T_\text{lifetime}})\\ =\img[-1.35em]{/images/withinseminar.png}, \text{ただし、}\lambda_\text{IF}\neq\lambda_\text{SM} \tag{126.1} $$

平均PUDを求めるには不稼働度(Unavailability)の時間平均が知りたいので、$\lambda t\ll 1$の前提で$R(t)=e^{-\lambda t}\approx1-\lambda t+\frac{1}{2}\lambda^2 t^2$と、2次項までMaclaurin展開し、平均PUDを求めると、 $$ \require{cancel} \overline{PUD}=\frac{1}{T_\text{lifetime}}Q_\text{subsystem}(T_\text{lifetime})=\frac{1}{T_\text{lifetime}}\left[1-A_\text{subsystem}(T_\text{lifetime})\right]\\ \approx\frac{1}{\bcancel{T_\text{lifetime}}}\left[\bcancel{1}-(\bcancel{1}-\lambda_\text{IF}\bcancel{T_\text{lifetime}}+\frac{1}{2}{\lambda_\text{IF}}^2 {T_\text{lifetime}}^\bcancel{2})\right]\\ -\frac{1}{\bcancel{T_\text{lifetime}}}\frac{\lambda_\text{IF}}{\lambda_\text{IF}-\lambda_\text{SM}}\left[ (\bcancel{1}-\lambda_\text{SM}\bcancel{T_\text{lifetime}}+\frac{1}{2}{\lambda_\text{SM}}^2 {T_\text{lifetime}}^\bcancel{2})\\ -(\bcancel{1}-\lambda_\text{IF}\bcancel{T_\text{lifetime}}+\frac{1}{2}{\lambda_\text{IF}}^2 {T_\text{lifetime}}^\bcancel{2})\right]\\ =(\lambda_\text{IF}-\frac{1}{2}{\lambda_\text{IF}}^2 T_\text{lifetime})-\frac{\lambda_\text{IF}}{\bcancel{\lambda_\text{IF}-\lambda_\text{SM}}}\left[(\bcancel{\lambda_\text{IF}-\lambda_\text{SM}})-\frac{1}{2}T_\text{lifetime}(\bcancel{\lambda_\text{IF}-\lambda_\text{SM}})(\lambda_\text{IF}+\lambda_\text{SM})\right]\\ =(\bcancel{\lambda_\text{IF}}-\bcancel{\frac{1}{2}{\lambda_\text{IF}}^2 T_\text{lifetime}})-\lambda_\text{IF}\left[\bcancel{1}-\frac{1}{2}T_\text{lifetime}(\bcancel{\lambda_\text{IF}}+\lambda_\text{SM})\right]\\ =\img[-1.35em]{/images/withinseminar.png} \tag{126.2} $$ 以上から、前稿の2重化での簡易計算と完全一致します。


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

あるWebの記事について (2)

posted by sakurai on July 8, 2019 #125

同じ記事のPMHFについても怪しいところがあります。

まずPMHFそのものは単純で故障する頻度そのものである。ただ実際には1億回あたり1回未満というのはかなり難しい。一般にエレクトロニクス業界で使われている故障頻度には「FIT」(Failure in Time:10億時間あたりに発生する故障回数)と呼ばれるものがあるが、自動車向けのMCUなどではどんなに少ないものでも20FIT(10億時間あたり20回)といわれており、このままでは10^-8/hを満たせない。 ただ、PMHFは、ある特定の回路そのものの故障頻度ではなく、システム全体の故障頻度と見なすこともできる。例えば全ての部品を二重化しておき、片方が壊れてももう片方がそれを引き継ぐことができるとすれば、トータルとしての故障頻度は10FITに減る計算になり、これでASIL DのPFHFの目標をクリアできることになるからだ。

要約すれば、主系とバックアップ系が、それぞれ20FITの故障率を持つ2重化システムがあるとき、「トータルとしての故障頻度」が10FITになるということのようです。

実際には「トータルとしての故障頻度」はDPF(Dual Point Failure)の時であるから、車両寿命を$T_\text{lifetime}$として単純な確率計算では、 $$ \Pr\{\text{DPF}\}=\Pr\{\text{Channel 1 failed}\cap\text{Channel 2 failed}\} =\Pr\{\text{Channel 1 failed}\}\Pr\{\text{Channel 2 failed}\}\\ =(\lambda_\text{IF}T_\text{lifetime})(\lambda_\text{SM}T_\text{lifetime}) =(10\times 10^{-9})^2{T_\text{lifetime}}^2=1\times 10^{-16}{T_\text{lifetime}}^2 $$ となります。

この確率には主系⇒バックアップ系のフェイルオーバーだけでなく、その逆の場合も含まれるので、フェイルオーバーの場合のPMHF、すなわち平均PUDを求めると、この1/2を$T_\text{lifetime}$で割った値となります。 $$ M_\text{PMHF}=\overline{PUD}=\frac{1}{2}\lambda_\text{IF}\lambda_\text{SM}T_\text{lifetime} $$

この値は、車両寿命がいくら大きくても10FITにはなりません。例えば車両寿命が10万時間の場合のPMHF、すなわち平均PUDは、 $$ M_\text{PMHF}=\overline{PUD}=\frac{1}{2}\lambda_\text{IF}\lambda_\text{SM}T_\text{lifetime}=0.5\times 10^{-16}\cdot 1\times 10^{5}=0.005[FIT] $$ となります。逆にこれが10FITだとすると、車両寿命は5,708年というあり得ない値となってしまいます。

誤りの原因は2重化の場合の確率計算を1/2にしてしまったところにあります。本来は2重化システムにおいては、主系に故障があっても、バックアップ系が動作するフォールトトレラント性があるため、引き続いてバックアップ系にもフォールトが起きないとシステムの故障とはなりません。従って、確率計算としては両方にフォールトが起こる場合の、確率の掛け算になります。

以前の記事のように、レアイベント近似を用いれば、直列系は確率の足し算、並列系は確率の掛け算となります。表記の記事は、並列系で確率の掛け算をするところを、2冗長だから単純に1/2をかけたのかもしれませんが、正しくは10[FIT]ではなく0.005[FIT]のような、非常に低い数字になります。

いずれにせよ、故障頻度は故障確率として計算することを理解していないと、このような誤りを引き起こします。


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

8.3.1 マイコンの取り扱い他

posted by sakurai on June 28, 2019 #120

8.3.1 マイコンの取り扱い

1st EditionではPart 10が主にISO 26262を半導体に適用する場合のガイドラインであったため、マイコンの取り扱いはPart 10に存在しましたが、2nd Editionになって、Part 10は全般的なガイドラインとなり、Part 11としてISO 26262を半導体に適用する場合のガイドラインが新設されたため、ISO 26262をマイコンに適用する場合の話題がPart 11に移動しました。

8.3.2 PMHF式

PMHF式については説明が追加されました。しかしながら、導出過程や導出前提を明らかにしたものではありません。また、式自体にも疑義があります。弊社ではPMHFを1st Edition発効から8年間に渡って研究しており、その結果としてIEEE最優秀論文賞を得ることができました。この論文は1st Editionの式を対象としていますが、新たに2nd Editonで式が変更されたため、それに基づく論文をIEEEに投稿中です。

弊社ではPMHFに関する論文をRAMS 2020に投稿中であり、そのため、最新の研究#103~108を一旦非開示としました。⇒RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。

12 システム開発のガイダンス

1st Editionの思想から拡張されているフォールトトレランス(耐故障性)についてまとめられた節が新設されました。1st Editionの思想は、とにかくフォールトが発生した場合にはFTTI中にシステムを安全状態に持っていけば、それでハザードが回避できるため、OKでした。

ところが、例えば高速道路の追い越し車線を120Km/hで走行中にフォールトを検出し、いくら安全状態だからといって、その場(追い越し車線内)で車両を停止させてしまうと、これはかなり危険な状態であることが容易に想像できます。このような場合は可能な限り左端の路側帯に寄せて停車するか、もしくは次の出口や安全な場所まで走行したいはずです。

本節ではこのような要求に対して解答を与えるものとなっており、基本的なアーキテクチャはIFに対するSM1としてバックアップ系を想定しています。例えば、IFについてASIL-Dを割り当てている時に、当然その平均PUD(=PMHF)は10[FIT]未満となりますが、故障したときには安全状態で停止するのではなく、動作し続けることがフォールトトレラントのために必要です。しかしながら、その場合にもASIL-Dを要求するものではありません。例えば、バックアップ系の時速が一定速度より遅ければASIL-Bとすることができます。その場合、速度は遅くても修理工場まで走行することが可能です。

本節には2とおり例示されており、緊急動作時間(EOTTI)以内に修理するか、上記のようにバックアップ系に切り替われば良いことになります。問題はEOTTIがあまりにも短い場合(例えば1sec未満)は修理工場に行くことができないので、その計算が必要となります。それが12.3.1.1に示されています。

次の図120.1の(2)は前記事にも掲載されている、2nd EditionのPMHF式(図109.3)の$T_\mathrm{service}$を$T_\mathrm{eotti}$と置き、$T_\mathrm{eotti}$について解いた式となっています。

図%%.1
図120.1 PMHF式に基づくEOTTIの導出

一方、次の図120.2の(3)は、ワースト時を想定しているようです。バックアップ系がEOTTI時間走行する状態での故障確率式です。

図%%.2
図120.2 車両寿命間の故障に基づくEOTTIの導出

いずれの式にも問題がありそうなので、次項で説明します。


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

Kパラメータは条件付き確率か (3)

posted by sakurai on May 12, 2019 #100

前稿(99.1)において、時刻$t$から$t+dt$において、IFのフォールトがVSG抑止される微小確率を求めると、 $$ \Pr\{\mathrm{IF\ prevented}\cap\mathrm{IF\ failed\ in\ }(t, t+dt]\cap\mathrm{IF\ not\ failed\ before\ }t\}\\ =\Pr\{\mathrm{IF\ prevented}\ |\ \mathrm{IF\ failed\ in\ }(t, t+dt]\cap\mathrm{IF\ not\ failed\ before\ }t\}\\ \cdot\Pr\{\mathrm{IF\ failed\ in\ }(t, t+dt]\ |\ \mathrm{IF\ not\ failed\ before\ }t\}\cdot\Pr\{\mathrm{IF\ not\ failed\ before\ }t\}\\ =K_{\mathrm{IF,FMC,RF}}\lambda_{\mathrm{IF}}R_{\mathrm{IF}}(t)dt \tag{100.1} $$ ただし、 $$ \Pr\{\mathrm{IF\ prevented}\ |\ \mathrm{IF\ failed\ at\ }t\cap\mathrm{IF\ not\ failed\ before\ }t\}=K_{\mathrm{IF,FMC,RF}},\\ \Pr\{\mathrm{IF\ failed\ in\ }(t, t+dt]\ |\ \mathrm{IF\ not\ failed\ before\ }t\}=\lambda_{\mathrm{IF}}dt,\\ \Pr\{\mathrm{IF\ not\ failed\ before\ }t\}=R_{\mathrm{IF}}(t) $$ となりましたが、「DCはSMのアーキテクチャにより決定される」ことを前提とし、フォールト発生とフォールト検出は独立な事象と考えれば、同じ確率式は、 $$ \Pr\{\mathrm{IF\ prevented}\cap\mathrm{IF\ failed\ in\ }(t, t+dt]\cap\mathrm{IF\ not\ failed\ before\ }t\}\\ =\Pr\{\mathrm{IF\ preventable}\}\cdot\Pr\{\mathrm{IF\ failed\ in\ }(t, t+dt]\ |\ \mathrm{IF\ not\ failed\ before\ }t\}\\ \cdot\Pr\{\mathrm{IF\ not\ failed\ before\ }t\}=K_{\mathrm{IF,FMC,RF}}\lambda_{\mathrm{IF}}R_{\mathrm{IF}}(t)dt \tag{100.2} $$ ここで、 $$ \Pr\{\mathrm{IF\ preventable}\}=K_{\mathrm{IF,FMC,RF}}, \\ \Pr\{\mathrm{IF\ failed\ in\ }(t, t+dt]\ |\ \mathrm{IF\ not\ failed\ before\ }t\}=\lambda_{\mathrm{IF}}dt,\\ \Pr\{\mathrm{IF\ not\ failed\ before\ }t\}=R_{\mathrm{IF}}(t) $$ と求められます。従って、(100.1)の$\Pr\{\mathrm{IF\ prevented}\ |\ \mathrm{IF\ failed\ at\ }t\}$という確率的な$t$の関数を、(100.2)の$\Pr\{\mathrm{IF\ preventable}\}$という定数に置き換えることができます。

2nd SMの属性である$K_{\mathrm{FMC,MPF}}$についても同様の議論が成り立ち、Kパラメータは条件付き確率ではなく、アーキテクチャ的に決定している能力(定数)として扱います。結論として、

$$ K_{\mathrm{IF,FMC,RF}}:=\Pr\{\mathrm{IF\ preventable}\}\tag{100.3} $$ $$ K_{\mathrm{IF,FMC,MPF}}:=\Pr\{\mathrm{IF\ detectable}\}\tag{100.4} $$ $$ K_{\mathrm{SM,FMC,MPF}}:=\Pr\{\mathrm{SM\ detectable}\}\tag{100.5} $$


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

Kパラメータは条件付き確率か (2)

posted by sakurai on May 10, 2019 #99

(98.1)の定義を用いれば、時刻$t$から$t+dt$において発生するIFのフォールトについて、VSG抑止される確率を求めると、条件付き確率のチェインルールを用いれば、 $$ \Pr\{\mathrm{IF\ prevented}\cap\mathrm{IF\ failed\ in\ }(t, t+dt]\cap\mathrm{IF\ not\ failed\ before\ }t\}\\ =\Pr\{\mathrm{IF\ prevented}\ |\ \mathrm{IF\ failed\ in\ }(t, t+dt]\cap\mathrm{IF\ not\ failed\ before\ }t\}\\ \cdot\Pr\{\mathrm{IF\ failed\ in\ }(t, t+dt]\ |\ \mathrm{IF\ not\ failed\ before\ }t\}\cdot\Pr\{\mathrm{IF\ not\ failed\ before\ }t\}\tag{99.1} $$ ここで、それぞれ $$ \Pr\{\mathrm{IF\ prevented}\ |\ \mathrm{IF\ failed\ in\ }(t, t+dt]\cap\mathrm{IF\ not\ failed\ before\ }t\}=K_{\mathrm{IF,FMC,RF}},\\ \Pr\{\mathrm{IF\ failed\ in\ }(t, t+dt]\ |\ \mathrm{IF\ not\ failed\ before\ }t\}=\lambda_{\mathrm{IF}}dt,\\ \Pr\{\mathrm{IF\ not\ failed\ before\ }t\}=R_{\mathrm{IF}}(t) \tag{99.2} $$ であるから、 $$ (99.1)=K_{\mathrm{IF,FMC,RF}}\lambda_{\mathrm{IF}}R_{\mathrm{IF}}(t)dt\tag{99.3} $$ と、IFに関する故障率や信頼度関数で表すことができます。

問題1
しかしながら、Kパラメータ($K_{\mathrm{FMC,MPF}}$及び$K_{\mathrm{FMC,RF}}$)が条件付き確率として一定だと矛盾が起きます。抑止条件が確率的に作用することにより、例えば1回目にはVSG抑止されたフォールトが、2回目にはVSG抑止されないことが起こりえます。あるいは1回目にはリペアされたフォールトが2回目にはリペアされないことが起こりえます。検出が確率的になされるからとはいえ、同じ故障が検出されたりされなかったりするのは、合理性がありません。

問題2
次に、例えば故障検出率$K_{\mathrm{FMC,MPF}}$について考えると、長時間が経ち故障検出を長く続ける場合を考えます。検出されるフォールトは全量リペアされるのに比べて、検出されないフォールトはどんどん溜まって行き、不信頼度は上昇し続けます。従って、新たにフォールトするうちの検出される部分の比率が高まりそうであるのに、条件付き確率として一定値であると感覚に反します。

フォールト検出のたびにサイコロで検出を決めているならそのようになりますが、一般的には診断カバレージ(Diagnostic Coverage; DC)はSMのアーキテクチャにより決定され、確率的には検出されないとここでは考えることにします。そうすれば、上記の問題点は解消されます。

図%%.1
図99.1 Q(t)のグラフ

問題1
確率的に一定ではなく、アーキテクチャ的に一定量を必ず検出できるとした場合のグラフです。これであれば、$\tau$毎に必ず検出分は修理され、問題はありません。

問題2
これに関しても、アーキテクチャ的に一定量を必ず検出できるとした場合、グラフから見られるように、不信頼度は時間と伴に上昇していきます。


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

posted by sakurai on November 5, 2018 #69

デュアルポイントフェイリャ

次にDPFについて、弊社が考える式とどこが相違しているかを見ていきます。

まず、SMがVSGとならない場合のパターン1式は特定条件(※1)でのみ合っています。この条件は1st Edition規格第1式とも同じです。次にパターン2は特定条件(※1)において前述のように2倍だけ異なっています。この2倍の理由は不明です。追記:4年後に判明したのでこの記事に記載しました。
※1 $K_{IF,lat}=0\cap K_{SM1,det}=1$の場合。これを言い換えると、IFはVSGの可能性があるが修理不可能、かつ、SM1はVSGの可能性無しで修理可能。

さらにパターン3、4式は特定条件(※2)でのみ合っています。単にパターン1, 2をひっくり返した(IFとSM1を入れ替えた)式のように見えます。
※2 $K_{SM1,lat}=0\cap K_{IF,det}=1$の場合。これを言い換えると、SM1はVSGの可能性があるが修理不可能、かつ、IFはVSGの可能性無しで修理可能。

これは以下の条件からくるものと推測します。以下は2nd Edition Part10 8.3.2.3 Table 2の引用です。

表69.1
First fault:SM1⇒Second fault:IF First fault:IF⇒Second fault:SM1
Cannot notify the driver Pattern 1 Pattern 3
Can notify the driver Pattern 2 Pattern 4

つまり、Pattern1及び2はIFフォールトによるVSGであり、SM1は修理系、IFは非修理系を仮定しています。 一方、Pattern3及び4はSM1フォールトによるVSGであり、Pattern1及び2のIF/SM1を入れ替えたものとなっているところから推測すればIFは修理系、SM1は非修理系を仮定しています。

いずれも最初のフォールトが起きるエレメントは、upしたりdownしたりを繰り返しても良いのですが(=修理可能という意味)、2番目にフォールトが起きるエレメントは、(最初のフォールトがリペアされた場合)downしたりupしたりするはずが、2番目にdownすることしか許されていません。これは非修理系を意味します。つまり後からフォールトするエレメントの制約が強すぎます。このことは言葉の定義だけで理解されるものではなく、その仮定から導出された1st Editionの式の意味まで考えて初めて理解されることです。

いずれにしろ、この前提はIFもSM1も$t=0$において修理系という一般的なサブシステムに対して、修理不可能という制約をかけすぎているため、PMHFの過大評価につながります。

弊社が考えるPMHFの一般式

IFとSM1が$t=0$において修理系という条件で、マルコフ状態遷移図を書き、確率微分方程式を立て積分して平均PUDを算出した式において、Edition 1の方法で上界を求めた式は、 $$ M_{PMHF}=\lambda_{IF,RF}+\img[-1.35em]{/images/withinseminar.png}\tag{69.1} $$ となります。

規格の式(図68.1)は、実際よりも過剰な※1または※2のみで成立する式です。


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

posted by sakurai on October 16, 2018 #66

ISO/TR 12489:2013(E)において、信頼性用語の定義がまとめてあるため、それを記載します。ただし、弊社の考えを交えており、そのまま引用しているわけではありません。以下に$X_\text{item}$をアイテム$item$の無故障運転継続時間(failure free operating time)とするとき、

信頼度(Reliability)

$$ R_\text{item}(t):=\Pr\lbrace\text{item not failed in }(0, t]\rbrace=\Pr\lbrace\mathrm{item\ up\ at\ }t\rbrace=\Pr\lbrace t\lt X_\text{item}\rbrace \tag{66.1} $$ 非修理系システムで、時刻$t$までに一度も故障していない確率。非修理系なので、一度でも故障すると故障しっぱなしになるため、一度も故障していない確率です。

不信頼度(Unreliability, Cumulative Distribution Function, CDF)

$$ F_\text{item}(t):=\Pr\lbrace\mathrm{item\ failed\ in\ }(0, t]\rbrace=\Pr\lbrace\mathrm{item\ down\ at\ }t\rbrace=\Pr\lbrace X_\text{item}\le t\rbrace \tag{66.2} $$ 非修理系システムで、時刻$t$までに故障する確率。

非修理系なので、一度でも故障すると故障しっぱなしになるため、時刻が0からtまでに故障したことがある確率です。等号は有っても無くても値は変わりません。

故障密度(Probability Density, Probability Density Function, PDF)

$$ f_\text{item}(t):=\lim_{dt \to 0}\frac{\Pr\lbrace\mathrm{item\ fails\ in\ }(t, t+dt]\cap\mathrm{item\ up\ at\ } t\rbrace}{dt}=\frac{dF_\text{item}(t)}{dt} \tag{66.3} $$ 又は、微小故障確率形式として、 $$ f_\text{item}(t)dt=\Pr\{\mathrm{item\ fails\ in\ }(t, t+dt]\cap\mathrm{item\ up\ at\ } t\}\\ =\Pr\lbrace t\lt X_\text{item}\le t+dt\rbrace\\ =\Pr\{X_\text{item}\in dt\} \tag{66.4} $$ 非修理系システムで、時刻$t$で、単位時間あたりに故障する確率。正確には、時刻$t$から$t+dt$までに故障する微小確率を$dt$で割り、単位時間あたりに直したもの。

【証明】 条件付き確率公式及び、確率の加法定理を用いて、 $$ f_\text{item}(t):=\lim_{dt \to 0}\frac{\Pr\lbrace t\lt X_\text{item}\le t+dt\rbrace}{dt} \\ =\lim_{dt \to 0}\frac{\Pr\lbrace t\le X_\text{item}\rbrace+\Pr\lbrace X_{item}\le t+dt\rbrace - \Pr\lbrace t\le X_\text{item} \cup X_\text{item}\le t+dt\rbrace}{dt} \\ =\lim_{dt \to 0}\frac{R(t)+F(t+dt)-1}{dt}=\lim_{dt \to 0}\frac{F(t+dt)-F(t)}{dt}=\frac{dF_\text{item}(t)}{dt} \tag{66.5} $$

(瞬間)故障率(Failure Rate)

$$ \lambda_\text{item}(t):=\lim_{dt \to 0}\frac{\Pr\lbrace\mathrm{item\ fails\ in\ }(t, t+dt]\ |\ \mathrm{item\ not\ failed\ at\ } t\rbrace}{dt}=\frac{f_\text{item}(t)}{R_\text{item}(t)} \tag{66.6} $$ 非修理系システムで、時刻$t$で稼働している条件において、単位時間あたりに故障する条件付き確率。正確には、時刻$t$から$t+dt$までに故障する条件付き確率を$dt$で割り、単位時間あたりとしたもの。ISO 26262の場合は、確率分布が指数分布のため、故障率は定数として扱います。

【証明】 条件付き確率の式及び、上記$f_\text{item}(t)$の式を用いて $$ \lambda_\text{item}(t):=\lim_{dt \to 0}\frac{\Pr\lbrace X_\text{item}\le t+dt \cap t \le X_\text{item}\rbrace}{dt}\frac{1}{\Pr\lbrace t \le X_\text{item}\rbrace}=\frac{f_\text{item}(t)}{R_\text{item}(t)} \tag{66.7} $$ 又は、微小故障条件付き確率形式として、 $$ \lambda_\text{item}(t)dt=\Pr\lbrace\mathrm{item\ fails\ in\ }(t, t+dt]\ |\ \mathrm{item\ not\ failed\ at\ } t\rbrace\\ =\Pr\{t\lt X_\text{item}\le t+dt\ |\ t\le X_\text{item}\}\\ =\Pr\{X_\text{item}\in dt\ |\ t\le X_\text{item}\} \tag{66.8} $$

稼働度((Point) Availavility)

$$ A_\text{item}(t):=\Pr\lbrace\mathrm{item\ up\ at\ }t\rbrace \tag{66.9} $$ 修理系システムで、時刻$t$で稼働している確率。

不稼働度((Pont) Unavailavility, PUA)

$$ Q_\text{item}(t):=\Pr\lbrace\mathrm{item\ down\ at\ }t\rbrace=1-A_\text{item}(t) \tag{66.10} $$ 修理系システムで、時刻$t$で不稼働な確率。

不稼働密度((Point) Unavailability Density, PUD)

$$ q_\text{item}(t):=\lim_{dt \to 0}\frac{\Pr\lbrace\mathrm{item\ down\ in\ }(t,t+dt]\cap\mathrm{item\ up\ at\ } t\rbrace}{dt} =\frac{dQ_\text{item}(t)}{dt} \tag{66.11} $$ 又は、微小不稼働確率形式として、 $$ q_\text{item}(t)dt=\Pr\lbrace\mathrm{item\ down\ in\ }(t,t+dt]\cap\mathrm{item\ up\ at\ } t\rbrace \tag{66.12} $$ 時刻$t$で単位時間あたりに不稼働になる確率。正確には、時刻$t$から$t+dt$までに不稼働になる微小確率を$dt$で割り、単位時間あたりに直したもの。failure frequency (故障頻度), unconditional failure intensity (UFI; 無条件故障強度), ROCOF(Rate of OCcurrence Of Failure)とも呼ばれる。

一方、PUDは修理系サブシステムが対象でかつ定期検査修理(PIR)が前提。

平均不稼働密度(Average PUD)

PUDの車両寿命間$T_\text{lifetime}$の平均値を求めると、平均不稼働密度(Average PUD)は、積分の平均値の定理より、 $$ \overline{q_\text{item}}=\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}q_\text{item}(t)dt=\frac{1}{T_\text{lifetime}}Q_\text{item}(T_\text{lifetime}) \tag{66.13} $$ AROCOFも同様な定義だが、平均不稼働密度(Average PUD)は修理系サブシステムが対象でかつ定期検査修理(PIR)が前提。

PFH(Probability of Failure per Hour)

注意:Probablity of Failure per Hourは古い定義で現在はaverage failure frequency (平均故障頻度), average unconditional failure intensity (平均無条件故障強度)。

$$ PFH:=\overline{q_\text{item}}=\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}q_\text{item}(t)dt=\frac{1}{T_\text{lifetime}}Q_\text{item}(T_\text{lifetime})\\ =\frac{1}{T_\text{lifetime}}\Pr\lbrace\mathrm{item\ down\ at\ }T_\text{lifetime}\rbrace, \text{ただし}T_\text{lifetimeは車両寿命} \tag{66.14} $$ PMHFも同様の定義だが、平均不稼働密度(Average PUD)は修理系サブシステムが対象でかつ定期検査修理(PIR)が前提。

Vesely故障率(Vesely Failure Rate)

修理系システムで、時刻$t$で稼働している条件において、単位時間あたりに不稼働になる条件付き確率。conditional failure intensity (条件付き故障強度)とも呼ばれる。

$$ \lambda_\text{v,item}(t):=\lim_{dt \to 0}\frac{\Pr\lbrace\mathrm{item\ down\ in\ }(t, t+dt]\ |\ \mathrm{item\ up\ at\ } t\rbrace}{dt}=\frac{q_\text{item}(t)}{A_\text{item}(t)} \tag{66.15} $$


以下はISO/TR 12489にはない確率関数です。

修理度(Repairability)

修理系システムで、時刻$t$において不稼働度が修理されるその割合。修理時間は無視できるものとする。 $$ M(t):=\Pr\lbrace\text{repaired at }t\ |\ \text{failed at }t\rbrace\tag{66.16} $$


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

PMHF規格第3式の導出

posted by sakurai on October 7, 2018 #65

安全機構フォールトによるVSGの場合のPMHF計算

DPFにはもう1パターンが存在します。それがMのフォールトがSMにより抑止されているものの、SMフォールトが引き続いて起こる場合です(表63.1のCase 2)。

この状態がレイテントになるのかならないのかが曖昧です。PMHF式では次に示すようにVSGとなる場合に含まれているので、PMHFの観点ではレイテントとなると考えられますが、一方でLFMではこの状態は計算に入っていません。規格に自己矛盾が見られます。

PMHF規格第3式では、

図%%.1
図65.1 Part10 8.3.3 PMHF規格 第3式
のように「故障の次数がはっきりしない場合」と訳していますが、orderを次数としたのは誤りで、これは順番と訳すべきです。なぜなら、PMHF規格第1式は主機能とSMのフォールトの順番を条件としているためです。また、irrelevantにはっきりしない場合という訳は無く、無関係な場合と訳すべきです。

それでは「故障の順番が無関係な場合」とはどういうことでしょうか?実は前稿で求めたのが、最初のフォールトはどうあれ、主機能MのフォールトによるVSG確率でした(表63.1のCase 1及びCase 4)。従って、「故障の順番が無関係」とは、両方(全て)の条件の場合を意味し、次に必要なのはSMのフォールトによるVSG確率です(表63.1のCase 2及びCase 3)。とはいえSMの単一フォールトでVSGとはならないので、SMフォールトはDPF確率のみを考えます(表63.1のCase 2)。

マルコフ状態遷移図でのLAT1→DPF

従って、SMによるVSG(DPF)の微小不稼働確率は、 $$ q_{SM,DPF}(t)dt=\Pr\{\text{LAT1 at }t\cap\text{SM down in }(t, t+dt]\}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{65.1} $$ と求められ、平均PUDを計算すれば、 $$\overline{\varphi_{SM,DPF}}\approx\frac{1}{2}K_{M,FMC,RF}\lambda_M\lambda_{SM}\left[(1-K_{SM,FMC,MPF})T_{lifetime}+K_{SM,FMC,MPF}\tau_{SM}\right]\tag{65.2}$$ となるため、(63.1)と加え合わせれば、順番によらない式(というか、MまたはSMによりVSGとなる確率式) $$M_{PMHF}\approx(1-K_{M,FMC,RF})\lambda_M\\ +K_{M,FMC,RF}\lambda_M\lambda_{SM}\left[(1-K_{SM,FMC,MPF})T_{lifetime}+K_{SM,FMC,MPF}\tau_{SM}\right]\\ =\lambda_{M,RF}+\lambda_{M,DPF}(\lambda_{SM,DPF,lat}T_{lifetime}+\lambda_{SM,DPF,det}\tau_{SM})\tag{65.3} $$ が求められます。

前稿と同様、車両寿命の項と比べて定期検査時間による項が十分小さく無視できる場合、つまり$\lambda_{SM,DPF,lat}T_{lifetime}\gg\lambda_{SM,DPF,det}\tau_{SM}$の場合、(65.3)は $$M_{PMHF}\approx\lambda_{M,RF}+\lambda_{M,DPF}\lambda_{SM,DPF,lat}T_{lifetime}\tag{65.4} $$ となり、PMHF規格第3式の

図%%.2
図65.2 Part10 8.3.3 PMHF規格 第3式(再掲)
正確に一致します。

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


ページ: