Masalah berikut telah diposting di Halaman Facebook Mensa International:
Posting itu sendiri menerima 1000+ komentar tetapi saya tidak akan membahas detail tentang perdebatan di sana karena saya tahu ini adalah paradoks kotak Bertrand dan jawabannya adalah . Apa yang membuat saya tertarik di sini adalah bagaimana seseorang menjawab masalah ini menggunakan pendekatan Monte Carlo? Bagaimana algoritma untuk mengatasi masalah ini?
Ini usaha saya:
- Hasilkan angka acak yang terdistribusi secara seragam antara 0 dan 1 .
- Biarkan acara kotak berisi 2 bola emas (kotak 1) yang dipilih kurang dari setengah.
- Menghitung angka yang kurang dari dan memanggil hasil sebagai S .
- Karena kepastian untuk mendapatkan bola emas jika kotak 1 dipilih dan itu hanya peluang 50% untuk mendapatkan bola emas jika kotak 2 dipilih, maka kemungkinan mendapatkan urutan GG adalah
Menerapkan algoritma di atas dalam R:
N <- 10000
S <- sum(runif(N)<0.5)
S/(S+0.5*(N-S))
Output dari program di atas sekitar yang hampir cocok dengan jawaban yang benar tetapi saya tidak yakin ini adalah cara yang benar. Apakah ada cara yang tepat untuk menyelesaikan masalah ini secara terprogram?
x <- boxes[[sample(3, 1)]]
berarti Anda mengambil kotak dari 3 kotak? Jika demikian, mengapa itu perlu karena kami tahu Anda sudah memilih bola emas?