2

次のシナリオの確率方程式を理解する必要があるシナリオを持つ、楽しみのためのアプリをまとめようとしています。

何かを何度も試み、それぞれの試みに成功率があるとします(事前にわかっています)。これらすべての試みを行った後、成功する確率はどのくらいですか?

たとえば、3回の試行があります(すべて個別に実行されます)。

1つ目は60%の成功率であることが知られています。2つ目は、成功率が30%であることが知られています。3番目は75%の成功率であることが知られています。3つすべての試行が行われた場合に成功する確率はどのくらいですか?

いくつかの数式を試しましたが、正しい数式を特定できません。

助けてくれてありがとう!

4

3 に答える 3

9

勝つ確率は、3 つとも負けない確率です: 1 - (1 - 0.6) (1 - 0.3) (1 - 0.75)

于 2009-07-31T22:33:45.110 に答える
5

1-.4 * .7 * .25

つまり、すべての試行が失敗する確率を見つけて、それを反転します。したがって、一般に、確率P [i]のイベントの有限シーケンスが与えられると、少なくとも1つのイベントが成功する確率は1-(1-P [0])*(1-P [1])*..です。 *(1-P [n])

そして、これが値を計算するためのperlワンライナーです:(入力は成功率の空白で区切られたリストです)

perl -0777 -ane'$ p = 1; $ p * = 1-$ _ foreach @F; 1-$pを印刷します。"\ n" '
于 2009-07-31T22:31:04.617 に答える
2

「すべての失敗」の可能性を計算します (すべての 1-pj の積です。ここで、pj は j 番目の成功の可能性です。確率を 0 から 1 の間の数値以外の何かとして表す確率計算は狂っています。そのため、絶対に代わりにパーセンテージが必要な場合は、入力または出力は、最初または最後に変換を行います!) そして、「少なくとも 1 回の成功」の確率は、1 からその積を引いたものです。

編集:これは実行可能な疑似コードです-つまり、Python-数値(元の数値とコメントで変更した数値)を使用して、入力と出力としてパーセンテージを使用します。

$ cat proba.py
def totprob(*percents):
  totprob_failure = 1.0
  for pc in percents:
    prob_this_failure = 1.0 - pc/100.0
    totprob_failure *= prob_this_failure
  return 100.0 * (1.0 - totprob_failure)
$ python -c'import proba; print proba.totprob(60,30,75)'
93.0
$ python -c'import proba; print proba.totprob(2,30,75)'
82.85
$
于 2009-07-31T22:32:04.910 に答える