Saya baru saja memainkan permainan dengan anak-anak saya yang pada dasarnya bermuara pada: siapa pun yang menggulung setiap angka setidaknya sekali pada die 6-sisi menang.
Saya menang, akhirnya, dan yang lainnya selesai 1-2 putaran kemudian. Sekarang saya bertanya-tanya: apa harapan dari panjang permainan?
Saya tahu bahwa harapan jumlah gulungan sampai Anda menekan angka tertentu adalah .
Namun, saya punya dua pertanyaan:
- Berapa kali Anda harus melempar dadu enam sisi sampai Anda mendapatkan setiap angka setidaknya satu kali?
- Di antara empat uji coba independen (yaitu dengan empat pemain), apa yang diharapkan dari jumlah maksimum gulungan yang dibutuhkan? [catatan: maksimum, bukan minimum, karena pada usia mereka, ini lebih tentang menyelesaikan daripada tentang pergi ke sana dulu untuk anak-anak saya]
Saya dapat mensimulasikan hasilnya, tetapi saya ingin tahu bagaimana cara menghitungnya secara analitis.
Berikut ini adalah simulasi Monte Carlo di Matlab
mx=zeros(1000000,1);
for i=1:1000000,
%# assume it's never going to take us >100 rolls
r=randi(6,100,1);
%# since R2013a, unique returns the first occurrence
%# for earlier versions, take the minimum of x
%# and subtract it from the total array length
[~,x]=unique(r);
mx(i,1)=max(x);
end
%# make sure we haven't violated an assumption
assert(numel(x)==6)
%# find the expected value for the coupon collector problem
expectationForOneRun = mean(mx)
%# find the expected number of rolls as a maximum of four independent players
maxExpectationForFourRuns = mean( max( reshape( mx, 4, []), [], 1) )
expectationForOneRun =
14.7014 (SEM 0.006)
maxExpectationForFourRuns =
21.4815 (SEM 0.01)