プロが教えるわが家の防犯対策術!

ある試行の結果がn種類あり、それぞれ確率は1/nで、
m回の試行でn種類全てが1回以上発生する確率を求めたいです。
たとえば
サイコロをm回振って1の面~6の面まで全てが1回以上出る(n=6)と言うことです。
どのように求めるのか教えてください。

※宿題や課題ではありません。

A 回答 (6件)

#3です。

#4さんのご指摘の通り、#3で書き込んだ(i)式に間違いがありました。正しくは以下の式です。
N(m+1,n+1)=(n+1){N(m,n)+N(m,n+1)}......(i)

表計算ソフトでの計算のしかたですが、私は次のように計算しました。セルの行番号がm、列がnです。
(1)1行目のセルに全て0を入力します。
(2)A列のセルに全て1を入力します。
(3)B2に =COLUMN()*(A1+B1) と入力して、求めたいm,nの範囲まで、この式をコピーします。
(4)Sheet2のA1に =Sheet1!A1/COLUMN()^ROW() と入力して、この式をコピーします。

これでSheet1に場合の数が、Sheet2に確率が表示されます。ただしm,nの値が大きくなると概数で表示され、誤差も大きくなります。
    • good
    • 0

 例題を使って計算方法を説明します。


 サイコロを6回振ったとき、いくつの目が出るか(例 1・1・1・2・2・4というふうに出たら、出た目は「1」と「2」と「4」の3つ)(順番の違いを無視しない)。

6つ出る出方は、1~6が1回ずつなので、1~6を並べ替えたものと考えられる。つまり、720通りである。

しかしこのやり方だと3つとか4つ出る出方の計算が難しい。

そのため、次のやり方をおすすめする。

1つ出る出方は「1が6回」、「2が6回」・・・「6が6回」なので6通り

2つ出る出方 まず、「1」と「2」のみが出ている出方を考える。サイコロを6回振って「1」と「2」のみが出る出方は2^6=64通りである。しかしこの中には「1・1・1・1・1・1」と「2・2・2・2・2・2」という出方が含まれている。よって、「1」と「2」の2つが出る出方は62通りである。「6つの目の中の2つ」は15通りであるから、2つ出る出方の総数は62×15=930通りである。

3つ出る出方 「1」と「2」と「3」が出る出方は3^6=729通りである。しかしこの中には1~3のうち1つおよび2つしか出ていないものも含まれている。1つしか出ていない出方は3通り、2つ出ている出方は、「1」と「2」が出ているものと「1」と「3」が出ているものと「2」と「3」が出ているものに分けられ、62×3C2=186通りとなる。そのため、「1」と「2」と「3」の3つが出ている出方は3^6-3-62×3C2=540通りであり、3つ出る出方の総数は540×6C3=10800通りである。

4つ出る出方  4^6-540×4C3-62×4C2-4=1560  1560×6C4=23400通り

5つ出る出方 (5^6-1560×5C4-540×5C3-62×5C2-5)×6C5=10800通り

6つ出る出方  6^6-1800×6C5-1560×6C4-540×6C3-62×6C2-6=720通り

確率論的には、1つ7776.0分の1 2つ50.168分の1 3つ4.3200分の1

4つ1.9938分の1分の1 5つ4.3200分の1 6つ64.800分の1 となる(それぞれを出方の総数6^6で割った値)。
    • good
    • 0

自信がないのに、恐縮ですが。



#3さんのN(n,m)についてですが、おそらく、
>N(m+1,n+1)=(m+1){N(m,n)+N(m,n+1)}......(i)
の部分は、
N(m+1,n+1)=(n+1){N(m,n)+N(m,n+1)}
のような気がします。


あと、
N(m,n)=n^m+Σ[i=1 to n-1]nCi*i^m*(-1)^(n-i)
のような気がします。(少なくともn=4,m≦20では成立する)

なので、ご質問の確率は
P(m,n)=1+Σ[i=1 to n-1]nCi*(i/n)^m*(-1)^(n-i)
かも。

N(m,n)はn!で割り切れるので、そのことを念頭におけば、Σの項が上手く変形できるのかもしれませんね。
    • good
    • 0

#1さんの回答で充分だと思いますが、試しに自分でも解いてみたので別解を投稿します。

適当なmとnで検算してみたら#1さんの式と同じ値になったのですが、もしかしたら私の答えは間違っているかもしれません。私の方法は面倒ですが、たくさんのm,nでの確率を計算しなければならない場合はこちらの方法がよいと思いました。

m回の試行でn種類全てが1回以上発生する場合の数をN(m,n)とします。求める確率は N(m,n)/n^mになります(m<nのときはN(m,n)=0)。

求める場合の数は、次の(I),(II)の2通りに分けられます。
(I) (m-1)回目までにちょうど(n-1)種類の目が出ていて、m回目に残りの目が出る。
(II) (m-1)回目までに全ての種類の目が出ていて、m回目にはどの目が出てもよい。

このことから、以下の式ができます。
N(m+1,n+1)=(m+1){N(m,n)+N(m,n+1)}......(i)

また、n=2のとき、n=mのときのN(m,n)はそれぞれ以下のようになります。
N(m,2)=2^m-2......(ii)
N(m,m)=m!......(iii)

(i),(ii),(iii)式から、小さいm,nから順に計算していけば求めたいm,nでの値が求められます。表計算ソフトなどを使うとよいと思います。ただし、m,nが大きくなるとN(m,n)がとても大きくなってしまうので注意が必要です。

正確な値を求める必要がなければ、パソコンで何度も繰り返しサイコロを振らせるプログラムを作成するという方法もあります。
    • good
    • 0

1から「n種類が1回以上発生しない確率」を引けばいいんじゃないですか?

    • good
    • 0

A={1,2,,,,,m},B={1,2,,,,,n}としAからBへの全射の数をZ(m,n)としたら


確率はZ(m,n)/n^m
ここでZ(m,n)=Σ[k=0,n](-1)^k*C(n,k)*(n-k)^m

*すいません質問されても回答できません。
    • good
    • 0

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