Posts Tagged with "ISO 26262"

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

$Q(t)$とChatGPT (6)

posted by sakurai on July 28, 2023 #633

人間:

計算が間違っているようです。$i=1, 2, 3, ..., n$とし、$j=(i-1)=0, 1, 2, ... n-1$とします。和の項が大部分キャンセルするので、$\sum$の項をそれぞれ第1、第2項とすると、第1項が$i=n$のとき、第2項が$j=0$のときのみがキャンセルされずに残ります。$A(t)$はどうなりますか?

ChatGPT:

了解しました。インデックス $i$ を $1, 2, 3, ..., n$ とし、$j = i - 1$ を $0, 1, 2, ..., n-1$ とします。そして、和の項がほとんどキャンセルすることを利用します。このとき、$A(t)$ の方程式は次のようになります。

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ \sum_{i=1}^{n} R(t-i\tau) - \sum_{j=0}^{n-1} R(t-j\tau) \right] $$

そして、$i=n$ のときの第1項と、$j=0$ のときの第2項のみがキャンセルされず残ります。そのため、結果は次のようになります。

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ R(t-n\tau) - R(t) \right] $$

したがって、最終的な $A(t)$ の式は次のようになります。

$$ A(t) = R(t) - K_\text{MPF} \cdot \tau \left[ R(t) - R(t-n\tau) \right] $$

この式は、時間 $t$ での稼働度 $A(t)$ を表しています。ただし、具体的な値は $R(t)$ の形状や特性、そして $K_\text{MPF}$ の値によります。


丁寧に教えた結果、$A(t)$の式を導出できました。ただし、元々$A(t)$の式は正しくないことに注意。その点を指摘します。


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

$Q(t)$とChatGPT (5)

posted by sakurai on July 27, 2023 #632

記事「$Q(t)$とChatGPT (4)」の続きです。

人間:

最後が誤っています。$R(\tau)R(t-i\tau)=R(t-(i-1)\tau)$と変形されます。

ChatGPT:

大変申し訳ありません。指摘いただいた通り、修理後に信頼度がリセットされるので、$R(\tau) \cdot R(t - i\tau)$は実際には次の修理までの信頼度、つまり$R(t - (i-1)\tau)$ となるべきです。

修正した結果は以下のようになります:

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ \sum_{i=1}^{n} R(t-i\tau) - \sum_{i=1}^{n} R(t-(i-1)\tau) \right] $$

これをさらに整理して、

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ R(t) - R(t - n\tau) \right] $$

となります。この形にするためには、シグマの和の項がキャンセルして $R(t) - R(t - n\tau)$ となることを利用しました。

この結果は時間 $t$ での稼働度 $A(t)$ を示していますが、$R(t)$ の具体的な形状や特性により結果は変わります。また、$K_\text{MPF}$ がシステムの性能に依存する一定の値であると仮定しています。


計算において符号の誤りがあるようです。さらに、元々$A(t)$の式は正しくないことに注意。


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

posted by sakurai on July 26, 2023 #631

表631.1はRAMS 2024の正式採択までのマイルストーンを示しています。

所属および名前無し版の論文およびプレゼンテーションの締め切りは7月末であり、既に投稿済みですので、表を更新しました。

表631.1 RAMS 2024へのマイルストーン
期限 マイルストーン 状態
2023/4/30 アブストラクト投稿締め切り(システム入力) 投稿済
2023/6/10⇒2023/5/25 アブストラクト採択結果 採択済
2023/8/1 論文、プレゼン投稿締め切り(名前、所属無し版) 投稿済
2023/9/1 第1回論文、プレゼン資料査読コメント受領
2023/10/10 改訂版論文、プレゼン投稿締め切り(名前、所属無し版)
2023/10/22 最終査読コメント受領
2023/10/10 学会出席登録締め切り
2023/10/10 最終論文、プレゼン投稿締め切り(名前、所属有り版)

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

$Q(t)$とChatGPT (4)

posted by sakurai on July 25, 2023 #630

人間:

式変形を行います。まず$K_\text{MPF}$は定数であり、$\sum$の外に出せます。次に$F(\tau)$を$(1-R(\tau))$とし、そのカッコをはずします。これは展開とも言い、1の項と$\sum$の項をかけ、そこから$R(\tau)$の項と$\sum$の項をかけたものを引きます。$A(t)$を求めてください。

ChatGPT:

了解しました。与えられた指示に基づいて、稼働度 $A(t)$ の式を変形してみましょう。まず、定数 $K_\text{MPF}$ をシグマの外に出します。次に、不信頼度 $F(\tau)$を $1 - R(\tau)$ と置き換え、展開します。この結果、次のような式を得ます:

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ \sum_{i=1}^{n} (1 \cdot R(t-i\tau) - R(\tau) \cdot R(t-i\tau)) \right] $$

これをさらに整理すると、

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ \sum_{i=1}^{n} R(t-i\tau) - \sum_{i=0}^{n} R(\tau) \cdot R(t-i\tau) \right] $$

$$ A(t) = R(t) + K_\text{MPF} \cdot \tau \left[ \sum_{i=1}^{n} R(t-i\tau) - n \cdot R(\tau)^2 \right] $$

となります。ただし、最後の等式では、すべての$i$ について $R(\tau)$ が一定であると仮定しました。

これは、時間 $t$ における稼働度$A(t)$ を表していますが、$R(t)$ の具体的な形状や特性によって、結果は大きく異なる可能性があります。


いくつか計算間違いがあるようです。さらに元々$A(t)$の式は正しくないことに注意。


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

$Q(t)$とChatGPT (3)

posted by sakurai on July 24, 2023 #629

人間:

本来不信頼度は時刻$i\tau$までに$F(i\tau)$です。ところが、$(i−1)\tau$時点ですべて修理されているため、各区間先頭の$i\tau$ではゼロにリセットされます。 従って、時刻を$−(i−1)\tau$だけ移動すると、$F(iτ−(i−1)\tau)=F(\tau)$となります。

ChatGPT:

なるほど、それぞれの修理周期が始まるときに不信頼度がリセットされるのであれば、不信頼度は周期的に変動することになります。すなわち、各修理インターバルの開始時点では不信頼度はゼロにリセットされ、その後一定の速度で増加し、次の修理時点までに $F(\tau)$ になります。この条件を反映するために、稼働度 $A(t)$ の式を以下のように書き直すことができます:

$$ A(t) = R(t) + \tau \sum_{i=1}^{n} F(\tau) \cdot K_\text{MPF} \cdot R(t-i\tau) $$

ここで $F(\tau)$ は各修理インターバルの終了時点での不信頼度を表します。また、信頼度 $R(t)$ の更新も各修理インターバルの開始時点で行われると仮定しました。

これは、各修理インターバルが互いに独立していて、それぞれのインターバルの開始時点でシステムが新品同様の状態に戻る(つまり、不信頼度がゼロにリセットされる)という仮定に基づいています。


  • 各検査周期において、不信頼度がゼロリセットされるため、区間での不信頼度は$F(\tau)$となるが、それを導出させることは困難であったため、結果を与えた。
  • $A(t)$の式は正しくないことに注意。

なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。


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

$Q(t)$とChatGPT (2)

posted by sakurai on July 21, 2023 #628

人間:

ここで、$m(iτ)$は時刻$i\tau$における修理率です。修理率は、不信頼度×検出率と書き換えられます。検出率は2nd SMの能力で決まるとして、一定値$K_\text{MPF}$とします。検出した分は全て修理される原則です。不信頼度は$F(t)$です。以上から$A(t)$を書き直してください。

ChatGPT:

了解しました。修理率 $m(i\tau)$ が不信頼度 $F(t)$ と一定の検出率 $K_\text{MPF}$ の積とすると、$m(i\tau) = F(i\tau) \cdot K_\text{MPF}$ と表現できます。これを稼働度 $A(t)$ の方程式に代入すると、以下のようになります:

$$ A(t) = R(t) + \tau \sum_{i=1}^{n} F(i\tau) \cdot K_\text{MPF} \cdot R(t-i\tau) $$

ここで、検出率 $K_\text{MPF}$ は2nd SMの能力に基づく一定の値です。また、不信頼度 $F(t)$ と信頼度 $R(t)$ は通常、$F(t) = 1 - R(t)$ の関係にあるとされますが、これはシステムや状況により変わる可能性があるため、具体的な数値を求める際にはこの関係性を確認する必要があります。


$A(t)$の式は正しくないことに注意。後で指摘します。


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

$Q(t)$とChatGPT

posted by sakurai on July 20, 2023 #627

ここからは、手引きをしてやれば、ChatGPTが(626.5)と同じ不稼働度$Q(t)$の式を導出できるかを検証します。

人間:

以下は稼働度の方程式です。 $$ A(t) = R(t) + \int_{0}^{t} m(x) \cdot R(t-x) \, dx $$ ここで、$ A(t) $ は時刻 $ t $ での稼働度(Availability)、$R(t) $ は時刻 $ t$ での信頼度(Reliability)、$ m(x) $は連続時刻 $x $ におけるリニューアル密度を表します。 一方、修理は$\tau$毎で、時刻$t$までに修理は$n$回あるとします。この場合、積分は離散時間に変化し、$x=i\tau, i=1, 2...$となります。
連続修理の場合の$A(t)$の方程式をまず示し、これが離散時間での周期$\tau$の定期修理の場合に、$A(t)$がどのように変わるかを、それぞれLatexのdisplaystyleで示してください。

ChatGPT:

すみません、ご指示を理解しました。以下が独立形式の数式となります:

$$ A(t) = R(t) + \int_{0}^{t} m(x) \cdot R(t-x) dx $$

次に、周期 $\tau$ の定期修理がある離散時間の場合、稼働度 $A(t)$ の方程式は少し複雑になります。ここで、$x = i\tau, \ i = 1, 2, \ldots$ という関係が成り立ちます。連続時間を離散時間に適用すると、積分は差分の和(つまり、リーマン和)になります。修理の影響を考慮に入れると、以下のような方程式を考えることができます:

$$ A(t) = R(t) + \tau \sum_{i=1}^{n} m(i\tau) \cdot R(t-i\tau) $$

ただし、$n$ は時刻 $t$ までの修理の回数で、この場合の離散時間モデルでは、リニューアル密度 $m(i\tau)$ が特定の時間点 $i\tau$ で定義されています。

ただし、これらの方程式は非常に一般的な表現であり、特定の信頼度関数 $R(t)$ やリニューアル密度 $m(x)$ によって、結果は大きく異なる可能性があります。これらの方程式をさらに詳しく分析するには、$R(t)$ や $m(x)$ の具体的な形状や特性を考慮に入れる必要があります。


$A(t)$の式は$\color{red}{\tau}\sum_{i=1}^{n} m(i\tau)$の赤字部分が正しくないことに注意。ただしこれは指示が良くないせいであり、ChatGPTは指示した積分を実行しています。


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

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導出仮定のひとつです。


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


ページ: