コンピューターにできないことはありますか?真の乱数を生成する。コンピュータはサイコロを振らない。

コンピューターにできないことはありますか?真の乱数を生成する。コンピュータはサイコロを振らない。

今日の世界では、航空宇宙工学から情報管理、人工知能からプロセス制御まで、あらゆる分野でコンピュータが不可欠です。

しかし、コンピューターは万能ではありません。彼らにはできないことがたくさんあります。乱数の生成など、一見単純なことでさえ、コンピューターでは実行できないことがあります。コンピューターは乱数を生成できないのですか?会社の年次総会の抽選会など、コンピューター抽選で行われることが多いのではないでしょうか?コンピューターが乱数を生成できることは事実ですが、コンピューターによって生成された乱数は真の乱数ではなく「疑似乱数」であるため、引用符で囲む必要があります。

なぜコンピューターは疑似乱数しか生成できないのでしょうか?コンピューターはサイコロを振ることができないからです。

サイコロを振ることは人間にとっては非常に単純な作業ですが、コンピュータにとっては非常に困難です。なぜなら、コンピュータのすべての動作には特定のプログラムが必要であり、乱数の生成も例外ではないからです。乱数とは何ですか?簡単に言えば、数字の出現にはいかなるルールも従いません。最初の数字の出現によって 2 番目の数字が決まるわけではありません。同様に、3 番目の数字は最初の 2 つの数字とは何の関係もありません。これはコンピューターでは不可能です。コンピュータはアルゴリズムを改良することで「疑似乱数」を生成するプロセスをより複雑にすることができますが、それでも「疑似乱数」の性質を変えることはできません。

では、コンピューターはどのようにして「疑似乱数」を生成するのでしょうか?

最も初期の疑似乱数生成法は、コンピュータの父、ジョン・フォン・ノイマンによって開発されました。それは「スクエアミドル方式」と呼ばれました。現在、この乱数生成方法は完全に廃止されています。いわゆるスクエア方式では、まずシード番号を選択する必要があります。この番号は事前に設定されており、1234 または 5678 にすることができます。例として 5678 を挙げます。最初のステップはシード数を二乗することです。 5678 に 5678 を掛けると 32239684 になります。

正方形にする最初のステップが完了したら、次のステップは真ん中を見つけることです。

いわゆる真ん中とは、32239684の真ん中の4つの数字を取ること、つまり前の32と後ろの84を除いた真ん中の残りの4つの数字が2396であり、これが最初の乱数であることを意味します。 2 番目の乱数は、最初の乱数の二乗処理を繰り返すことによって得られます。つまり、2396 に 2396 を掛けると 05740816 になり、中央の 4 桁は 7408 になります。これが 2 番目の乱数です。スクエアセンター法はあまりにも単純すぎるため、シード番号さえわかれば、その後の乱数はすべて計算できるため、現在は使われていません。

比較的単純ですが、今でも使用されている乱数生成の別の方法は、「合同法」と呼ばれます。

合同法では、まず 2 つの定数を選択する必要があります。たとえば、最初の定数は 444、2 番目の定数は 1234 です。ここで、まずシード番号が必要です。例として 5678 を取り上げます。最初のステップでは、シードに最初の定数を掛けます。これは 5678 に 444 を掛けたもので、2521032 になります。2 番目のステップでは、最初のステップの結果を 2 番目の定数で割ります。これは 2521032 を 1234 で割ったもので、2043 に丸められ、これが最初の乱数になります。 2 番目の乱数は、最初の乱数に対して上記の手順を繰り返すことによって生成されます。つまり、2043 に 444 を掛け、1234 で割って 735 になり、これが 2 番目の乱数になります。

二乗中央値法と比較すると、合同法ははるかに複雑です。シード番号を知る必要があるだけでなく、後で表示されるすべての乱数を計算するために、2 つの定数も知っておく必要があります。

もちろん、どのようなプログラムが使用されているかを事前に知っていて、十分な乱数サンプルがあれば、定数を計算することもできます。ただし、合同法は変換可能です。たとえば、乗算の後に加算を追加し、次に 3 番目の定数を追加します。これは「線形合同法」になりますが、これはもう少し複雑です。合同法と二乗中央値法はどちらも乱数を生成する比較的単純な方法です。現在、私たちが主に使用している乱数生成方法は、はるかに複雑な「メルセンヌツイスターアルゴリズム」です。このアルゴリズムには比較的複雑な計算プロセスが含まれ、行列とベクトルの数学的知識が必要です。この方法で生成された乱数の分布は真の乱数に非常に近いですが、本質的には依然として疑似乱数であり、各数値の間には論理的な関係があります。

詳細については、公式アカウントをフォローしてください:sunmonarch

<<:  もし地球が自転を止めたら、川や湖や海の魚はどこへ行くのでしょうか?

>>:  トイレを流すと何が起こりますか?

推薦する

17年前、彗星が「衝突」した。今年もまた、衝撃のドラマが生まれるだろう。地球を救う活動が進行中

まず一つ訂正させてください。いわゆる「砲撃」はメディアが使う形容詞です。正しい用語は衝突です。命中し...

発酵豆腐チキンウィングの作り方

発酵豆腐は、発酵豆腐とも呼ばれ、一般的な大豆食品であり、現在では調味料としてよく食べられています。発...

金糸ナツメの効能

今、私たちは食べ物を食べるとき、この食べ物が体に良いのか悪いのか、この食べ物は栄養があるのか​​、健...

豆の王様は誰ですか?

大豆は「豆の王様」として知られています。多くの栄養士は、毎日大豆や大豆製品を食べたり、豆乳を一杯飲ん...

パイナップルを調理すると最も栄養価が高く、アレルギーを防ぐことができます

パイナップルにアレルギーはありますか?パイナップルが大量に市場に投入されたことに伴い、パイナップルア...

短編動画業界で頻繁に起こる混乱を効果的に規制するにはどうすればよいでしょうか?

最近、孟美孟の短編ドラマチームが制作した「私の月給は代役」「黒メイド」「李助手はこんなに魅力的」「黒...

がんって怖いですか?心臓血管疾患は癌よりも恐ろしいです。リスクを軽減するための10の食事アドバイス

心筋梗塞による突然死のニュースをインターネットでよく目にする人も多いのではないでしょうか。心血管疾患...

Intel Skylake i7-6700K オーバークロックテスト

さまざまな理由により、Intel の最近の世代のプロセッサではオーバークロックが非常に制限されていま...

「北京漂流者」であり、若くして白髪になっている。

苦労している「北京漂流者」のほとんどにとって、北京で幸せに快適に暮らすのは容易なことではない。実は、...

iOS と同じくらいスムーズで、Android と同じくらい安定しているのに、なぜ誰も使わないのでしょうか?

世界三大モバイルOSの中ではAndroidが圧倒的な優位性で大きくリードしており、AppleのIOS...

おいしいほうれん草麺の作り方

ほうれん草は私たちの生活の中でよく食べられる野菜です。ほうれん草を使ってほうれん草麺を作る人がたくさ...

皮膚アレルギーがある場合、精製水を飲んでも大丈夫ですか?

皮膚アレルギーは非常に一般的な問題です。皮膚アレルギーを改善するには、アレルギーの原因を理解して、生...

ユーザーの履歴書を200万元で販売し、18歳の58.comはついに自分が嫌っていた人物になった

2000年、大学を卒業したばかりのヤオ・ジンボは不幸にも黒人の仲介人に遭遇した。このことから、「黒人...

陳村粉とは何ですか?

食べ物は人間にとって最も大切なものなので、人々は常に多くのおいしい食べ物を創り出すことができます。ラ...

パイナップルは減量に役立ちますか?

体重を減らしたいなら、食生活をコントロールしなければなりません。いくら食べても太らない果物や野菜はた...