22 |
不稼働度$Q(t)$について (3) |
2. 愚直に場合分けする導出法
前稿のようにエレガントに導出するのではなく、全ての場合を愚直に場合分けすることを行います。そのほうが抜け漏れが防止でき、確実そうです。
ただし、任意の検査時刻$\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$)まで です。
従って、フォールトの生起を単に「生起」、フォールトの検出を単に「検出」と省略して書けば、最近の検査までの生起の有/無、最近の検査での検出の可/不可、その後の生起の有/無の$2^3$とおりを考えれば良いわけです。この絞り込みは愚直とは言えず、むしろエレガントかもしれませんが。
この絞り込みを表現するために、3つ組記法を考え、
(($0$から$\tau_n$までの生起の有/無),($\tau_n$での検出の可/不可),($\tau_n$からtまでの生起の有/無))
の全ての組み合わせを考えます。有/無や可/不可をYes(有)/No(無)で表せば、全ての場合は$2^3$とおりあり、
- (Yes, Yes, Yes)
- (Yes, No, Yes)
- (Yes, Yes, No)
- (Yes, No, No)
- (No, Yes, Yes)
- (No, No, Yes)
- (No, Yes, No)
- (No, No, No)
の8とおりです。このうち、時刻$t$でSMが不稼働状態になるのは、
- (Yes, Yes, Yes)⇒不稼働
- (Yes, No, Yes)⇒不稼働
- (Yes, Yes, No)
- (Yes, No, No)⇒不稼働
- (No, Yes, Yes)⇒不稼働
- (No, No, Yes)⇒不稼働
- (No, Yes, No)
- (No, No, No)
の1, 2, 4, 5, 6の5とおりです。これらの不稼働になる場合を、真ん中の検出可(=Yes)でまとめれば、
1. (Yes, Yes, Yes)⇒不稼働
5. (No, Yes, Yes)⇒不稼働
の2とおりとなります。検出可の条件で不稼働となる確率は、上記の2とおりです。従って、この条件での時刻$t$での不稼働確率は、次の確率式 $$ \Pr\{\text{fault detected at }\tau_n\ \cap\ \text{SM receives 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とおりです。従って、この条件での時刻$t$での不稼働確率は、次の確率式 $$ \Pr\{\text{fault not detected at }\tau_n\ \cap \text{SM receives 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 receives a fault in }(0, t]\ \cup\\ \text{fault detected at }\tau_n\ \cap\ \text{SM receives a fault in }(\tau_n, t]\}\\ =\Pr\{\text{fault not detected at }\tau_n\}\Pr\{\text{SM receives a fault in }(0, t]\}\\ +\Pr\{\text{fault detected at }\tau_n\}\Pr\{\text{SM receives a fault in }(\tau_n, t]\}\\ =\img[-1.35em]{/images/withinseminar.png} \tag{349.3} $$ と導出されます。
なお、本稿はRAMS 2025に投稿予定のため一部を秘匿しています。