アプリ版:「スタンプのみでお礼する」機能のリリースについて

数学についてはド素人です。中学生レベルじゃないかなと思っています。

アドバイスをいただきたいのは,次のQ&AのANo.4~ANo.9に対してです。
元は他の方の発した質問であり,それを横取りして応酬が続いていくのも失礼なので,私の方で別途 質問をたてることにしました。
http://oshiete.goo.ne.jp/qa/7656221.html

私の回答は単純なイメージであり,まったく厳密でないのは自分でも分かっているつもりです。
ただ,
まず信頼度に直してみるとか,指数関数を経由するとか,高校レベル?以上の難しいアプローチをとらなければ解答にならない理由が私にはなかなか実感できないのです。

この問題というのは,やはりそういう難しい問題なのでしょうか?

A 回答 (6件)

 「故障率」という名称は紛らわしいんで大嫌いです。

これは確率ではなく、(ある期間Lの間に故障が生じる回数)/(期間の長さL)を意味する。つまり、単位時間当たりに生じる故障の回数の期待値であり、従って[回/時間]という単位が付く数値です。
 故障率の逆数は「1回の故障あたり、次の故障までに経過する時間の期待値」、つまり「故障が生じる間隔の期待値」であって、これをMTBFと呼ぶ。だから[時間/回]の単位が付く数値です。ただし、ここでは長い期間に少数の故障が生じる話をしているんで、修理に掛かる時間なんざ無視できるほど短い、という仮定を置いています。
 一方、「ある一定期間Lの間に1回でも故障する確率」は、(確率ですから、もちろん)故障率とは別物です。経験上、また、適当な仮定のもとでの理論上、大抵のものが「一定期間Lの間に1回も故障しない確率」は、
 exp(-L×(故障率))
に従います。exp(a)は指数関数(eのa乗)のことです。指数関数にはいくつも重要な性質がありますが、まず
  exp(a)×exp(b) = exp(a+b)
が成立つということ。それから、|a|が1よりずっと小さい場合には近似式
  exp(a) ≒ 1+a
が成立つ(誤差は(a^2)/2程度)という性質がある。なので、「故障率が小さく、考えている期間Lも短い」という条件付きなら、「一定期間Lの間に1回でも故障する確率」は
  1- exp(-L×(故障率)) ≒ L × (故障率)
である。その条件下でなら、故障率をあたかも「単位時間当たりの確率」であるかのように思ってLに掛け算して計算しても実用上差し支えない、ということですが、条件を外したらこれは成立ちません。

 ようやく本題です。
 2個の要素が直列したシステムでは、どっちの要素が故障してもシステム全体が故障する。修理に掛かる時間は無視できるものとすると、ある一定期間Lのうちで要素Aが故障する回数の期待値と、その同じ期間に要素Bが故障する回数の期待値との和が、その期間にシステムが故障する回数の期待値に他ならず、
  (システムの故障率) = (要素Aの故障率)+(要素Bの故障率)
となります。
 いやここが納得いかない、というご質問のようですが、ヨコ軸に時間軸をとって、その上に、要素Aが故障した時点をクロ丸で、要素Bが故障した時点をシロ丸で書き込んだとすれば、丸がクロだろうがシロだろうがその時点でシステムは故障しているのですから、
  故障率=(ある期間Lの間に故障が生じる回数)/(期間の長さL)
と見比べてみれば話は自明かと思います。
 このとき、システムがある一定期間Lの間に1回でも故障する確率pは
  p = 1-(期間Lの間に要素Aが1回も故障しない確率)×(期間Lの間に要素Bが1回も故障しない確率)
  = 1-exp(-L×(要素Aの故障率))×exp(-L×(要素Bの故障率))
  = 1-exp(-L×((要素Aの故障率)+(要素Bの故障率))
ですから、システムがその期間に1回も故障しない確率(1-p)は、要素A,Bと同じ確率モデル( exp(-L.×(故障率)) )に従っています。すなわち、
  システムの故障率 = (要素Aの故障率)+(要素Bの故障率)
  p = 1-exp(-L×(システムの故障率))
ということですね。

 並列のシステムの場合には、冗長性があるわけで、要素全部がダウンして初めてシステムが故障したことになります。ここでは二重になってる場合を考えましょう。
 要素がひとつ故障しても、修理しないでそのままシステムを使い続ける、という場合、「システムがある期間Lの間に1回でも故障する確率」qとは「その期間に要素二つともがそれぞれ1回でも故障する確率」のことだから、
  q = (1-exp(-L×(要素Aの故障率)))×(1-exp(-L×(要素Bの故障率)))
この場合、「一定期間Lの間にシステムが1回も故障しない確率」(1-q)は、
  1-q = 1-(1-exp(-L×(要素Aの故障率)))×(1-exp(-L×(要素Bの故障率)))
となり、qはもはや要素の従う確率モデル(exp(-L×(故障率)))に厳密には従っていません。この点は要注意ですね。
 ここでたとえば、要素Aの故障率が要素Bの故障率よりずっと小さい、という場合ですと、
  1-q ≒ exp(-L×(要素Aの故障率))
となって、これならシステムは要素と同じ確率モデルに(近似的に)従うことになります。信頼できる方の要素の故障率が、ほとんどそのままシステム全体の故障率になる、ということですね。
 また、両者の故障率が同じだという場合だと、
  1-q = 2×exp(-L×(要素の故障率))-exp(-2L×(要素の故障率))
  ≒ 2×exp(-L×(要素の故障率))
  ≒ exp(-0.7L×(要素の故障率))
と近似でき、だからやはりシステムは要素と同じ確率モデルに近似的に従う。二重化すると、システムの故障率が要素の故障率のln(2)≒0.7倍程度になったのに相当する効果がある訳です。(ln(2)は2の自然対数。つまり2 = exp(ln(2))です。)
 いやでも実際には、それぞれの要素の故障が必ずしも独立に起こるわけじゃありません。同じモジュールを複数並列しておくと、同じ原因(例えば電磁ノイズとか衝撃とかバグとか)で同じように壊れるというのはよくあることで、せっかく二重化しておいたのに、いざとなると全滅だったりします。さらに、一方の故障で生じた影響が他方に波及して短時間のうちに故障させてしまうというのもしばしば経験します。ま、ま、それはさておき。  

 一方、同じ並列システムでも、「もし一方の要素が故障したら、システムを稼働したままでその修理を行う」ということだと話がまるで違います。一つの要素が故障してから修理が完了するまでの間にもう一つの要素が故障した場合に限り、システムはダウンする。なので、要素の故障率だけ分かっていてもシステムの故障率は計算できず、修理に掛かる時間、すなわち平均故障回復時間(MTTR)を知らなくてはなりません。さらに、修理中の要素が、まさにその修理中にまた故障してシステムを再び危機におとしいれるということはアリエナイ。なぜなら修理中ってことは、その要素はまだ稼働していないわけですから。この点にも注意を要するのは、このケースでは修理に掛かる時間が無視できないからです。
 そんなこと言っても、最初に「修理に掛かる時間なんざ無視できるほど短い」と仮定したのでした。てことはつまりMTTRはMTBFに比べてとても短い時間である((MTTR×故障率)は1よりずっと小さい)から、上記のexpに関する近似が利用できます。
  システムの故障率 = ((期間Lの間に要素Aが故障する回数)×(要素AのMTTRのうちに要素Bが故障する確率) + (期間Lの間に要素Bが故障する回数)×(要素BのMTTRのうちに要素Aが故障する確率))/L
  = (要素Aの故障率)×(要素AのMTTR)×(要素Bの故障率) + (要素Bの故障率)×(要素BのMTTR)×(要素Aの故障率)
  = (要素Aの故障率)×(要素Bの故障率)×((要素AのMTTR)+(要素BのMTTR))
 MTBFとは故障率の逆数に他ならず、そしてMTBFに比べてMTTRはうんと小さい。両者の比を要素の故障率に掛け算したぐらいのオーダーに、システムの故障率は抑えられる。よほど安心ですね。
 オラクルに吸収合併されたサン・マイクロシステムに吸収合併された、タンデムという会社のコンピュータがこの方式でした。文字通り至る所が二重になっていて、修理中も一切システムを止めない。OSのバージョンアップ作業中ですらです。だから米軍が採用してましたね。今ではいっぱいコンピュータがぶら下がったネットワーク上で協調分散処理をやるから、そんなアクロバットは要らなくなっちゃったわけで。

 以上のように、どういう状況での何の確率やら期待値やらの話をしているのか、という前提を明確にすれば、あとはただの計算なんですが(いや中学生には難しいかも知れない)。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

初心者が迷わないように,話題を一つ一つ順に進めていき,
stomachmanさんにとってはおそらく当たり前の概念なのでしょうが
私のために,何度も登場する用語を省略することなく,
繰り返しを厭わずに式の変化を一段階ずつ示していただいていることが
ありありと見て取れます。本当にありがたいです。

stomachmanさんのこの解説をきちんと理解するところから始めたいと思います。

お礼日時:2012/08/23 14:24

exp(-λT) を一次近似して 1-λT になったのか、


1-p を exp(-p) で近似して、指数法則が利用できるようにしたのか、
はたして、そのふたつのことに区別はあるのか。
    • good
    • 0

ANo.2 のstomachmanです。


 ANo.2にちょっと補足しときます。

(1) No.2は、ANo.1へのコメントも見た上で書いたせいもあって、膨張してしまいました。
 改めて、ご質問に対する直接の回答の要点は、

> 要素Aが故障した時点をクロ丸で、要素Bが故障した時点をシロ丸で書き込んだとすれば、丸がクロだろうがシロだろうがその時点でシステムは故障している

という、この一文だけです。つまり、「仰る通りごく簡単な話である」というのが回答です。
 
(2) 「事象が発生する間隔Tが指数分布 λ×exp(-λ×T) に従う場合に、一定期間内に事象が発生する回数の分布」をポアソン分布と言います。たとえば白熱電球から飛んで来る光子の個数は正確にポアソン分布に従います。でも、並列システムの故障の発生はポアソン分布に(近似的に従うが、)厳密に従うわけではない。「事象が発生する間隔Tが指数分布に従う」という前提が多少ながら崩れるからです。
 ANo.2ではポアソン分布は直接必要ないので出しませんでしたが、この分野には良く出て来る言葉だということもあり、生半可にご存知だと却って混乱するかも知れないな、と思ったので念のため追記しときます。
    • good
    • 0

「信頼性理論」ご用達の確率・統計術の基礎は「ベイズ確率」だそうです。


  参考 URL ↓ 「ベイズ確率」

普通の「信頼性理論」テキストでは、ベイズ流の概念で書かれた算式などがいきなり天下り的に現れますが、並みの確率概念をかじっておれば、それなりにスンナリ納得できるようです。

ここのような Q&A BBS の質問に対し、「どのレベルで答案を示すべきか?」はひとえに質問動機しだい、という難問だと思いますけど…。

  

参考URL:http://ja.wikipedia.org/wiki/%E3%83%99%E3%82%A4% …
    • good
    • 0

前提が違うと思います。



故障率がポアソン分布に従うときです。

参考URL:http://itpro.nikkeibp.co.jp/article/COLUMN/20071 …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

私(jjon-com)が「aの故障発生は2時間中に1回」と単純にイメージしているけれど,
その故障発生のタイミングに規則性や同期性があったりしたら
そもそもこの計算が成り立たない。
この故障発生はポアソン分布に従うというランダム性が前提だ,
ということでよろしいでしょうか。

おっしゃるとおりだと思います。私はいままでそこに触れてきませんでした。

お礼日時:2012/08/25 12:45

全体の故障率は、部分の故障率の和ではありません。


ただ、そのように近似できるだけです。
この点は、もとのQAのA No.1で既に指摘され、
No.3までは、その話題が続いているようです。
No.4 6から、変になったみたいですね。

書店で、算数の学習参考書を探して、
「約数・倍数」の単元を眺めてみてください。
たぶん、小学4年か5年だったと思います。
1から100までの数のうち、3か5で割りきれる数
は何個か?という例題の解説を読めば、
ヒントが得られるでしょう。

全体が2個の部分a,bからなる場合、
(全体の故障率) = (aの故障率) + (bの故障率) - (a,bの同時故障率)
が成り立ちます。
a,bそれぞれの故障率がかなり小さいならば、
a,bの同時故障率は更に小さいと考えられますから、
(同時故障率)≒0 と近似することができそうです。
その結果、(全体の故障率) ≒ (部分の故障率)の和
となるのです。= ではなく、≒ です。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

実は私,質問文にリンクを載せた Q7656221 に出会うまでは
alice_44さんと同じように理解していたのです。

私は数学のド素人なのですけれど,
学生時代に情報処理の勉強で次の問題に出会った際,
http://okwave.jp/qa/q4250239.html の私の回答ANo.2

・故障率の単位はFITでありきわめて小さい
http://ja.wikipedia.org/wiki/FIT
・よって複数の部品が同時に故障する確率は無視して考えてよい

と講師に教えてもらいましたので。

同時故障が影響するか否かを考慮しないのならば,
直列/並列を区別する必要がありませんから,
上記の問題文でも直列/並列の別は記されていません。
alice_44さんの回答文も「全体」とだけ表現していますからこの立場ですよね。

ところが Q7656221 で質問者が「直列システムの故障率」と書いていたので,
気になってGoogle検索したところ,次のページを見つけたのです。
http://www.sist.ac.jp/~suganuma/kougi/other_lect …

ここに載っている並列システムの故障率の式は,
(同時故障率)≒0 の立場からは相容れない式だったので,

(同時故障率)≒0 を前提とする私の理解は間違いなのだろうか,
信頼度や指数関数を経ればこの前提なしで答えが得られるのだろうか,
そんな思いが湧き上がってきたわけです。

alice_44 さんは上記ページの「並列システムの故障率の式」をどう思われますか?
差し支えなければ,またアドバイスいただけると幸いです。

お礼日時:2012/08/23 04:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!