\当サイトではリンク広告を利用しています。/
無限の猿定理を、サイト上に実装しました。自由に打ち込んだ文字列を、猿が適当にタイプライターを打つことで再現しようと試みます。
上の埋め込み内でも使えますが、うまく動かない・大きなページで使いたいというときは、元の無限の猿定理サイトツールページへ(新しいタブで開きます)。
「無限の猿定理(無限のサル定理)」英語では”Infinite Monkey Theorem”とは、
“無限にランダムにタイプを続けるサルがいれば、いつかシェイクスピア全集を打ち出す”
という有名な数学・確率論のたとえ話です。
これは要するに、「無限回の試行があれば、確率的にどんな文字列も出現し得る」という話。
現実のサルがタイプライターを叩くわけではありませんが、
プログラム上でこの考え方をシミュレーションしてみると、とても面白い動きを見せてくれます。
今回紹介するこの「無限の猿定理シミュレーション」サイトツールでは、ユーザーが入力した任意の文字列(例:hello や 42 など)を目標として、仮想のサルが延々とランダムにタイプを続けます。
そして、運が良ければ目標文字列が生成される瞬間を目撃できるかもしれません!
また、ただ単に文字を出すだけでなく、
目標文字列との一致部分を 1文字一致=青、2文字以上の連続一致=赤 で強調表示する仕組みも搭載。
「今どのくらい近づいているか」を視覚的に楽しめます。
このツールは確率的な試行なので、結果は完全にランダム。
それでも、おおよその目安として次のような傾向があります👇
| 目標文字列の長さ | 出現までの目安 | 備考 |
|---|---|---|
| 1文字 | すぐ(数ミリ秒〜数秒) | 文字セットが約40種類なので、1/40の確率で即ヒット。 |
| 2文字 | 数十秒程度 | 40×40=1600通りの組み合わせ。運が良ければすぐ出る。 |
| 3文字 | 数分程度(やや運が必要) | 40³=約6.4万通り。かなり低確率。 |
| 4文字 | よほど運が良ければ出るかも? | 40⁴=約256万通り。ほぼ奇跡的。 |
| 5文字以上 | 現実的には出ない | 40⁵=約1億通り以上。現実的な時間ではまず不可能。 |
やってみた感じ、1文字や2文字の短い単語ならすぐ出ます。
3文字だと「お、出た!」という瞬間に立ち会えることもありますが、4文字以上になると“運試し”の領域に突入します。
このツールでは最大1時間のタイムアウトが設定されているため、5文字以上を完全一致で出すのは、もはや「宇宙的な運」が必要です。
setInterval によって動いています。このツールは、偶然と確率の世界をそのまま体験できる小さな実験室。
あなたのサルは、いつか「奇跡の一文」を打ち出せるでしょうか?🐒✨