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

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

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

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

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

サイコロを振ることは人間にとっては非常に単純な作業ですが、コンピュータにとっては非常に困難です。なぜなら、コンピュータのすべての動作には特定のプログラムが必要であり、乱数の生成も例外ではないからです。乱数とは何ですか?簡単に言えば、数字の出現にはいかなるルールも従いません。最初の数字の出現によって 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

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

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

推薦する

サムスンの折りたたみ式携帯電話について話している人がいますが、画面と本体の比率を高めた方が良いでしょう。

ほとんどの場合、何か違うことをするのは、単に違うという目的のためではなく、製品をより良くするために行...

秋分の日が来ました。 「4つの予防」と「3つの雨漏り防止」をしっかりして、良い秋をお過ごしください。

秋分の日が到来し、晩秋に突入しました。この時期は朝晩が涼しくなるだけでなく、正午の気温も下がり始めて...

主食レシピの紹介

私たちの日常生活では、1日3食の主食が欠かせません。主食は毎日お腹を満たすだけでなく、体が毎日必要と...

20万クラスの超安全SUV、ディープブルーS7がC-NCAPの5つ星安全評価を獲得

最近、中国新車評価プログラム(C-NCAP)がDeep Blue S7の評価結果を発表しました。結果...

「パーキンソン病」にならないで、パーキンソン病について話しましょう

パーキンソン病(PD)については、誰もがよく知っています。これは中高年によく見られる神経変性疾患です...

反論:2023年第3四半期の純電気乗用車の世界販売は前年比29%増加

純粋な電気自動車市場では、テスラは誰もが認めるリーダーであり、世界的なベストセラーです。しかし、BY...

キュウリとリンゴのジュースのレシピ

暑い夏はいつも暑くて落ち着かない気分になります。スーパーマーケットの冷蔵庫にはさまざまな飲み物があり...

ドイツ車は日本車よりも耐久性がありますか?メディアはフォルクスワーゲン サジターとカローラの衝突をテストした。誰がひっくり返ったの?

車愛好家の間では、ドイツ車は厚くて衝突に強いが、日本車は薄くて衝撃を吸収すると言われている。日本車と...

ピーマンと大根の漬物の作り方

人々は全粒穀物を食べる必要があり、1日3回の食事は不可欠です。人々の食生活、たとえ家庭料理であっても...

便秘の場合、そばを食べてもいいですか?

便秘はよくある病気です。一般的に、不適切な食生活、長期にわたる精神的ストレス、不適切な排便姿勢などが...

#千万IP创科学普# 秋の蚊の「戦闘効果」は桁外れ、デング熱に注意!

秋が近づくにつれ、蚊がまだ活発に活動していることに気づいた友人もいます。デングウイルスによって引き起...

パイナップルアレルギーの場合の対処法

日常生活では、人々はさまざまな野菜や肉を食べます。また、余暇には果物を食べるのが好きです。果物といえ...

Yipai 007、価格はXiaomi SU7の半分、新エネルギークーペの「価格キラー」

特別セール後、価格が119,900元に下がった東風一派007は、より魅力的に見え始めた。新年早々、半...