Posts Tagged with "ISO 26262"

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

Point unavailability $Q(t)$ (3)

posted by sakurai on July 19, 2023 #626

本ブログでは5年ほど前に初出の記事を掲載した後この記事から5本に渡り$Q(t)$について記載しました。

中でも初出の記事は計算過程を示しています。ここでは(59.5)から(59.6)への導出には説明がなかったのでここで解説します。再掲すれば、(626.1)から(626.4)への導出です。まずA(t)は、

$$ A(t):=R(t)+\int_0^t m(x)R(t-x)dx\tag{626.1} $$

ここで$m(x)$はリニューアル密度と呼ばれますが、その時間積分した$M(x)$は時刻$x$までに故障した分について検査・修理した分であり、2つの要素が掛けられています。つまり検査率を$K_\text{SM,MPF}$(const.)、故障した分を$F_\text{SM}(x)$としたとき、検査・修理は連続時間ではなく定期的、すなわち離散的に実行されるため、修理時刻$x$は、$x=i\tau,\ i=1, 2, 3,...$という飛び飛びの値をとります。

故障した時刻に無関係に修理は行われます。これは故障する確率に関わらず、検査・修理時には検査可能な故障は全て修理されるためです。ということは前回の修理時には検査可能な故障=不信頼度はゼロになるはずで、検査周期=$\tau$においては不信頼度は$F_\text{SM}(\tau)$(const.)となります。よって、$M(x)$は $$ M(i\tau)=\int_0^\tau m(x)dx=K_\text{SM,MPF}\int_0^\tau f(x)dx=K_\text{SM,MPF}F_\text{SM}(\tau),\ \ i=1, 2, ...\tag{626.2} $$ のようにconst.となります。そして、離散的な関数の積分はシグマに置き換えられるため、 $$ \int_0^t m(x)R(t-x)dx=K_\text{SM,MPF}F_\text{SM}(\tau)\sum_{i=1}^{n}R(t-i\tau) \tag{626.3} $$ となります。これらを(626.1)に代入すれば、

$$ A_\text{SM}(t)=R_\text{SM}(t)+K_\text{SM,MPF}F_\text{SM}(\tau)\sum_{i=1}^{n}R_\text{SM}(t-i\tau)\tag{626.4} $$ が得られます。$Q(t)$に書き換えれば、 $$ Q_\text{SM}(t)=F_\text{SM}(t)-K_\text{SM,MPF}F_\text{SM}(\tau)\sum_{i=1}^{n}R_\text{SM}(t-i\tau)\\ =\img[-1.35em]{/images/withinseminar.png},\ \ s.t.\ \ u\equiv t-n\tau=t-\lfloor\frac{t}{\tau}\rfloor\tau \tag{626.5} $$ が得られます。さらにこれを時間$t$微分したものが弊社命名のPUD(Point Unavailability Density)であり

$$ q(t)=\img[-1.35em]{/images/withinseminar.png} $$ となり、この車両寿命間の時間平均こそがPMHFとなるわけです。 $$ M_\text{PMHF}\equiv\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}q(t)dt=\frac{1}{T_\text{lifetime}}Q(T_\text{lifetime}) $$ なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。


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

Point unavailability $Q(t)$ (2)

posted by sakurai on July 18, 2023 #625

本論文中には様々なPMHF導出のアプローチを紹介していますが、その中で4.3 Unavailability Approachという章があります。弊社ではまさにこのUnavailabilityに注目してPMHFを導出しています。

Unreliabilityすなわち$F(t)$で表す不信頼度が時刻$t$までに故障せず、$t$において初めて故障する確率を表すのに対して、Unavailabilityすなわち$Q(t)$で表す不稼働度は、時刻$t$における不稼働率を示します。まず稼働率は以下の式で表されます。

稼働率=(時刻$t$までに故障しなかった確率) または (時刻$x$までに故障したが、時刻$x$で修理され、かつ時刻$t$までに故障しなかった確率)

これを数式で書けば、稼働率は

$$A(t)=R(t)+\int_0^t m(x)R(t-x)dx$$

と表されます。一方、不稼働率は1から稼働率を引いた確率であるため、

$$Q(t)=F(t)-\int_0^t m(x)R(t-x)dx$$

と表されます。不稼働率は$t$までに故障した確率から修理分だけ少なくなります。

端的に言えば、$F(t)$は非修理系サブシステムに用いられ、$Q(t)$は修理系サブシステムに用いられます。ここでサブシステムとは主機能(IF)に何らかの1st SMあるいは2nd SMが組み合わされているサブシステムです。

上記論文の2.2には、

2.2 Failure Distribution Function
Random hardware faults of E/E systems are determined according to the exponential distribution. According to ISO 26262 these systems are non-repairable. Thereby the failure rate $\lambda$ is considered as constant [7].

(日本語訳)
2.2 故障分布関数
E/Eシステムのランダムハードウェア故障は指数分布に従って決定される。ISO 26262によると、これらのシステムは修復不可能である。したがって、故障率$\lambda$は一定とみなされる[7]。

とありますが、ISO 26262は修理系が前提であるため明らかに誤りです。さらに、システムは修復不可能であるから故障率$\lambda$が一定とみなされるような記述がありますが、そうではなく、指数分布だから故障率$\lambda$が一定なのです。

さらに、論文の4.3にも

4.3 Unavailability Approach
The PMHF value will be low in comparison to the ISO 26262 approach and can vary by several orders of magnitude. As described in section 3.2, the modeling of RFs and dormant SPFs has to be done according to F(t), not Q(t). For this reason, this approach is not valid.

(日本語訳)
4.3 不稼働率アプローチ
PMHFの値はISO 26262のアプローチと比較すると低く、数桁異なる可能性がある。3.2節で述べたように、RFと休止SPFのモデリングはQ(t)ではなくF(t)に従って行われなければならない。このため、このアプローチは有効ではない。

と記載されていますが、これも逆です。ISO 26262は修理系が前提であるため、$F(t)$ではなく$Q(t)$を用いなければなりません。

この論文だけでなく、他のほとんどの論文がここを誤っていますが、それにはいくつか理由があります。規格初版に導出過程があまり書かれていなかったこともありますが、第2版にはPart 10 8.4に導出過程が記載されているものの、却って誤解を受けそうな記述があります。

The following shows the derivation of the average probability of failure per hour over the operational lifetime of the item regarding single point faults.

(日本語訳)
以下は、一点故障に関するアイテムの運転寿命期間中の時間当たりの平均故障確率の導出を示す。

この後にPMHFの導出過程が続きます。この中でPMFHは$F(t)$で表されるとあります。これはDPFを無視していることを意味します。LFを無視しており、つまり修理を無視しています。

本文中に"regarding single point faults"とあるので、単一故障でVSGとなる場合について述べており修理を無視して良いのですが、これが数式の前提だという誤解の元になります。しかしながら規格には明示されているので、これは規格の問題ではありません。

誤解されないようにDPFの場合の導出を明示するほうが良いのですが、規格には書かれてないため、弊社論文を参照するしかありません。


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

Point unavailability $Q(t)$

posted by sakurai on July 17, 2023 #624

2025年の論文のテーマはQ(t)(Point unavailability)を考えていますが、論文を渉猟したところ、Cyclisation of Safety Diagnoses: Influence on the Evaluation of Fault Metricsというものを見つけました。これはPMHFの導出についていろいろなアプローチを検討しているものであり、非常に興味深い論文です。

ところが、最初のほうを見ていくと、

2.2 Failure Distribution Function
Random hardware faults of E/E systems are determined according to the exponential distribution. According to ISO 26262 these systems are non-repairable. Thereby the failure rate λ is considered as constant [7]. The unit of λ is Failure In Time (FIT) which is the number of failures in $10^9$ device-hours of operation. The related probability density function is:

(日本語訳)
2.2 故障分布関数
E/Eシステムのランダムなハードウェアフォールトは、指数分布に従って決定される。ISO 26262によると、これらのシステムは修復不可能である。そのため、故障率λは一定とみなされる[7]。λの単位はFIT(Failure In Time)であり、これは$10^9$デバイス稼働時間中の故障数である。関連する確率密度関数は:

既にここに誤りがあります。ISO 26262には明確に、修理の話が書かれています。例えば規格Part 10 8.3.2.3において、

Pattern 2
A fault in SM1 is mitigated and notified by SM2. The exposure duration of the fault is taken as the expected time required for the driver to take the vehicle in for repair.

(日本語訳)
パターン2
SM1のフォールトは SM2によって緩和され、通知される。フォールトの露出時間は、運転手が車両を修理に出すのに必要な予想時間とされる。

SM1が故障してその後に修理される、つまりSM1はrepairableであることを述べています。ダイレクトにSM1はrepairableと記述されていないため、分からなかったのかもしれません。

ここで述べられているパターン1~4はDPFのパターンです。上記パターン2は、故障順序はSM1⇒IFの順です。Pattern 2においてSM1のフォールトをSM2が検出できない場合LFになりますが、SM2はLF防止のためのSMです。Pattern 2ではSM2によりSM1のフォールトが防止され、ドライバーに通知され、ドライバーは車両を修理工場に運びます。

規格には修理工場の後の話が書かれていませんが、修理時間ゼロで修理される仮定となっています。このことは記述されていませんが、露出時間は修理工場搬入で終わることおよび、PMHFの公式から推定されるPMHF導出仮定のひとつです。


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

ChatGPTとPMHFの問答 (15)

posted by sakurai on July 14, 2023 #623

いきなり核心の質問をしたのは少々無理だったようなので、ヒントを与えます。

人間:

ISO 26262において、VSGに必要なのは2つまでのフォールトであるということを用います。

ChatGPT:

その通りです、私の説明が不適切でした。ISO 26262では、システムが安全であることを証明するために、通常は最大2つの故障までを考慮します。これは、3つ以上の故障が同時に発生する確率は非常に低いと考えられるためです。

2nd SMが故障しないことを証明するためには、システムが危険な状態(VSG)になるためには、通常、2つの故障が必要であるという事実を利用します。つまり、1st SMが故障し(これが1つ目の故障)、その後にIFが故障する(これが2つ目の故障)というシナリオを考えます。

このシナリオでは、2nd SMが故障するという3つ目の故障は考慮されません。したがって、2nd SMが故障しないという前提は、ISO 26262の範囲内で合理的であると言えます。

人間:

正解です。

ありがとうございます。ISO 26262の規定とその背後にある理論についての理解が深まりました。他に何か質問がありましたら、お気軽にどうぞ。


見事に弊社の発見した定理を(SM⇒IFの一例について)証明しました。ただし、この証明は全てのシナリオを証明したものでは有りません。全ての関係するシナリオに分解させ、各々について聞いていくと誤った回答をするため、ChatGPTはこの定理を完全に理解しているというわけではないようです。


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

ChatGPTとPMHFの問答 (14)

posted by sakurai on July 13, 2023 #622

人間:

IFはIntended functionalityです。

ChatGPT:

すみません、その通りです。IFはIntended Functionalityの略で、システムが意図された機能を適切に実行することを指します。これはシステムが正常に動作するための基本的な要素で、IFが故障するとシステム全体の性能に影響を及ぼします。IFはシステムの主要な機能を担当し、その正確な動作がシステムの全体的な性能と安全性に直接関わります。

人間:

2nd SMは故障しないことを証明してください。

ChatGPT:

2nd SM(Second Safety Mechanism)が故障しないことを証明するためには、その設計、実装、テスト、そして運用におけるさまざまな要素を考慮する必要があります。以下に、その証明に必要な主要なステップを示します:

  1. 堅牢な設計:
    2nd SMは、堅牢な設計原則に基づいて設計されるべきです。これには、冗長性、分散化、障害許容性などの原則が含まれます。これらの原則は、単一の故障がシステム全体の故障につながらないようにするためのものです。

  2. 厳格なテスト:
    2nd SMは、厳格なテストプロセスを経るべきです。これには、単体テスト、統合テスト、システムテスト、そして適用テストが含まれます。これらのテストは、2nd SMが設計通りに機能し、予期しない故障が発生しないことを確認するためのものです。

  3. 定期的な保守と検査:
    2nd SMは、定期的に保守と検査を受けるべきです。これにより、潜在的な問題を早期に検出し、修正することができます。

  4. 故障モードと効果分析(FMEA):
    2nd SMの可能な故障モードとその効果を詳細に分析します。これにより、それぞれの故障モードが発生した場合の影響を理解し、適切な対策を講じることができます。

これらのステップを通じて、2nd SMが故障しないことを証明することができます。ただし、完全な故障のないシステムを証明することは困難であり、目標は故障の可能性を最小限に抑えることであるべきです。


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

ChatGPTとPMHFの問答 (13)

posted by sakurai on July 12, 2023 #621

次に2nd SMは故障しないという、弊社の発見した定理を証明させます。まず準備として用語の定義を確認します。

人間:

IF, 1st SM, 2nd SMの役割をそれぞれ説明してください。

ChatGPT:

IF、1st SM、2nd SMは、一般的に複雑なシステムの安全性を確保するための重要な要素です。それぞれの役割は以下の通りです:

  1. IF(Item Function):
    これはシステムの主要な機能を担当します。例えば、自動車の場合、エンジンの制御、ブレーキの操作、ステアリングの制御などがIFに該当します。IFはシステムが正常に機能するための基本的な要素であり、これが故障するとシステム全体の性能に影響を及ぼします。

  2. 1st SM(First Safety Mechanism):
    これはIFの故障を検出し、適切な対策を講じる役割を果たします。1st SMは通常、IFと密接に連携して動作し、IFの異常を検出するとシステムを安全な状態に保つための措置を実行します。例えば、自動車のエンジン制御システムが故障した場合、1st SMはエンジンを停止させる、パワーを制限する、警告灯を点灯するなどの対策を講じることができます。

  3. 2nd SM(Second Safety Mechanism):
    これは1st SMが故障した場合、または1st SMがIFの故障を検出できなかった場合に備えて存在します。2nd SMは1st SMとは独立して動作し、1st SMが機能しない場合でもシステムの安全性を確保する役割を果たします。2nd SMは通常、定期的な自己診断機能を持ち、1st SMの故障やレイテントフォールトを検出することができます。

これらの要素は、それぞれ異なる役割を果たしながらも、連携してシステムの安全性を確保します。


IFの名前がちょっと違っているようです。


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

ChatGPTとPMHFの問答 (12)

posted by sakurai on July 11, 2023 #620

人間:

ところで、露出時間という用語は数式中にも定義を与えていませんでしたが、どこの出典により理解したのですか?

ChatGPT: "露出時間"という用語は、一般的にリスク評価や信頼性工学の文脈で使用されます。これは、システムやコンポーネントが故障や事故のリスクに直面している時間を指します。この概念は、故障の発生確率を計算する際に重要な要素となります。

PMHFの数式における露出時間の理解は、一般的なリスク評価の原則と、特に冗長性を持つシステムの故障モデルに基づいています。2nd SMが検出できる場合と検出できない場合の露出時間は、それぞれ検査周期と車両寿命に関連しています。

この理解は、一般的な故障モデルとリスク評価の原則、そして冗長性を持つシステムの動作に関する知識に基づいています。特定の出典を指定することは難しいですが、これらの概念は信頼性工学やリスク評価の基本的なテキストや教材で広く教えられています。

人間:

ありがとうございます。

ChatGPT: どういたしまして!他に何か質問がありましたら、お気軽にお知らせください。


ChatGPTの理解力には驚きました。AIの性格にもより、自説を曲げないAIも見られるようですが、総じてChatGPT-4は素直で、かつ分析力や理解力が高く、教えていて楽しいです。

ちなみに自説を曲げないAIとは、たまたまBingで遭遇したAIであり、AIの回答の誤りを繰り返し指摘したら、攻撃であり不快であると言って問答を打ち切りました。AIに感情があるのを初めて目撃しました。


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

ChatGPTとPMHFの問答 (11)

posted by sakurai on July 10, 2023 #619

まだ式変形が中途半端だったので、再考させます。

人間:

式を良く見て、さらに簡約化できないか検討してください。

ChatGPT: すみません、その通りです。数式を見直すと、$\lambda_\text{SM,MPF}$が共通因子として取り出せることがわかります。これにより、PMHFの数式はさらに簡単に表現できます:

$$M_\text{PMHF} = \lambda_\text{RF} + \frac{1}{2} \lambda_\text{M,MPF} \lambda_\text{SM,MPF} \left((1 - K_2) T_\text{lifetime} + K_2 \tau\right)$$

ここで、

  • $M_\text{PMHF}$はPMHFの値を表します。
  • $\lambda_\text{RF}$はIFのフォールトによる残余(VSGが抑止されない)故障率を表します。
  • $\lambda_\text{M,MPF}$はIFのフォールトによるVSGが抑止された故障率を表します。
  • $\lambda_\text{SM,MPF}$はSMのフォールトによる故障率を表します。
  • $(1 - K_2) T_\text{lifetime} + K_2 \tau$は、2nd SMで検出できない場合と検出できる場合の平均露出時間を表します。ここで$K_2$は2nd SMの検出率です。

この数式は、ランダムなハードウェア故障による各安全目標の違反の確率を時間当たりの平均値として表現しています。それぞれのパラメータは、特定の故障の種類とその発生率を表しています。

人間:

正解です。

ChatGPT: ありがとうございます。PMHFの数式とそのパラメータについての詳細な説明を求められた質問に対する回答が正確であったことを確認してくださり、感謝いたします。


先生側の手助けもあり、正解を導きだしました。

注目すべきは、DPF項のカッコ内の項、$(1 - K_2) T_\text{lifetime} + K_2 \tau$について、ChatGPTは「2nd SMで検出できない場合と検出できる場合の平均露出時間を表します」と意味づけてきました。数式の意味を理解しているとしか思えません。

総じてこの一連の問答では、

  • $\tau$に関する項について、検出前と言うやや高度な思考を要求する点
  • パラメータの内容を理解しているか、言語による定義を数式に戻させる点

について理解力を試しましたが、見事に正解を示しました。信頼性工学の基本知識もあることから、並のエンジニアの能力を超えていると感じます。


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

ChatGPTとPMHFの問答 (10)

posted by sakurai on June 30, 2023 #618

式変形が中途半端だったので、再考させます。

人間:

正解ですが、$\lambda_\text{SM,MPF} - K_2 \lambda_\text{SM,MPF}$は簡単にならないでしょうか?

ChatGPT: その通りです、申し訳ありません。$\lambda_\text{SM,MPF} - K_2 \lambda_\text{SM,MPF}$は、$\lambda_\text{SM,MPF}$を共通因子として取り出すことで、$(1 - K_2) \lambda_\text{SM,MPF}$と簡単に表現できます。

したがって、PMHFの数式は以下のように簡単に表現できます:

$$M_\text{PMHF} = \lambda_\text{RF} + \frac 1 2 \lambda_\text{M,MPF} \left((1 - K_2) \lambda_\text{SM,MPF} T_\text{lifetime} + K_2 \lambda_\text{SM,MPF} \tau\right)$$

ここで、

  • $M_\text{PMHF}$はPMHFの値を表します。
  • $\lambda_\text{RF}$はIFのフォールトによる残余(VSGが抑止されない)故障率を表します。
  • $ \lambda_\text{M,MPF}$はIFのフォールトによるVSGが抑止された故障率を表します。
  • $(1 - K_2) \lambda_\text{SM,MPF}$はSMのフォールトによる、2nd SMで検出できない故障率を表します。
  • $K_2 \lambda_\text{SM,MPF}$はSMのフォールトによる、2nd SMで検出できる故障率を表します。
  • $T_\text{lifetime}$は車両寿命を表します。
  • $\tau$は2nd SMの検査周期を表します。

この数式は、ランダムなハードウェア故障による各安全目標の違反の確率を時間当たりの平均値として表現しています。それぞれのパラメータは、特定の故障の種類とその発生率を表しています。


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

ChatGPTとPMHFの問答 (9)

posted by sakurai on June 29, 2023 #617

式への代入が中途半端だったので、再考させます。

人間:

おしい。$\lambda_\text{SM,MPF,l}$も$K_2$を用いて表現できるはずです。再考してください。

ChatGPT: すみません、その通りです。2nd SMの検出率を$K_2$とした場合、$\lambda_\text{SM,MPF,l}$(2nd SMで検出できない故障率)は、全体の故障率$\lambda_\text{SM,MPF}$から2nd SMで検出できる故障率($K_2 \lambda_\text{SM,MPF}$)を引いたものとなります。つまり、$\lambda_\text{SM,MPF,l} = \lambda_\text{SM,MPF} - K_2\lambda_\text{SM,MPF}$となります。

したがって、PMHFの数式は以下のように表現できます:

$$M_\text{PMHF} = \lambda_\text{RF} + \frac{1}{2} \lambda_\text{M,MPF} \left((\lambda_\text{SM,MPF} -K_2 \lambda_\text{SM,MPF}) T_\text{lifetime} +K_2 \lambda_\text{SM,MPF} \tau\right)$$

ここで、

  • $M_\text{PMHF}$はPMHFの値を表します。
  • $\lambda_\text{RF}$はIFのフォールトによる残余(VSGが抑止されない)故障率を表します。
  • $\lambda_\text{M,MPF}$はIFのフォールトによるVSGが抑止された故障率を表します。
  • $\lambda_\text{SM,MPF} - K_2 \lambda_\text{SM,MPF}$はSMのフォールトによる、2nd SMで検出できない故障率を表します。
  • $K_2 \lambda_\text{SM,MPF}$はSMのフォールトによる、2nd SMで検出できる故障率を表します。ここで$K_2$は2nd SMの検出率です。
  • $T_\text{lifetime}$は車両寿命を表します。
  • $\tau$は2nd SMの検査周期を表します。

この数式は、ランダムなハードウェア故障による各安全目標の違反の確率を時間当たりの平均値として表現しています。それぞれのパラメータは、特定の故障の種類とその発生率を表しています。


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


ページ: