2012-04-11 2 views
-2

現在のランダム生成基準に基づいてアルゴリズムを書く必要があります。私は、既存のものを選択し、さまざまな要因(既存の事実を知ることによって可能性があります)と結合する必要があります。それではランダムなジェネレータについての読書を始めるには最適な場所は何でしょうか。私はWikiを知っていますが、有限のスタートを持つためにはいくつかの記事や論文を読む必要があります。また、私はクイックスタートが必要です。現在の既存のランダムジェネレーターとは何ですか?事実をそれに課すことはいかに実現可能か?ベストランダム度式

+2

私たちは図書館員ではありません... – MarioDS

答えて

1

現在のアルゴリズムはランダムの番号を生成しません。彼らは疑似 - ランダム番号を生成します。それは同じことではありません。

ランダム通常、ある種のハードウェアを使用して自然から数値を取得できます。例えば、大気ノイズを受信するようにチューニングされたFMチューナーの音量を読み取ると、数字はかなりランダムになります。このようなジェネレータの例はrandom.orgです。ダイス投げやコインフリップロボット、something similarを実装することもできます。 Linuxでは、/ dev/randomを使用して、ユーザーを使用してランダムなイベントを生成することができます。 擬似 -random番号ジェネレータが暗号化のために使用することができる高品質の乱数を生成する場合、PRNGによって生成されたデータは、thisとしてPRNGテストに合格しなければならないかを決定するために

。それは簡単ではないし、多くのPRNGが悲惨に失敗する。比較的高品質の疑似番号 -random番号を生成しやすいアルゴリズムの1つは、XorShiftです。しかし、簡単な実装は、この特定のジェネレータの背後にあるlogicを理解することは容易ではありません。

また、クイックスタートが必要です。

すべての主題と同様に、クイックスタートはウィキペディアに行き、件名のすべての参照を読み始めるか、またはgoogleにします。今のところあなたはそれをやろうとしていないようです。

は、私はあなたがいない

ウィキ

知っていません。あなたが「wikiを知っている」なら、あなたはすべての記事の終わりに記事を書くために使われたソースのリストがあることを知っていました。ソースを読んでください。

+0

ありがとうございます。:) – DumboJumbo

+0

オペレーティングシステムの暗号化PRNGはPRNGですが、外世界のエントロピーに基づいています。 Linuxでは、エントロピープールから直接数値を抜き出すこともできます。これは疑似乱数ではないランダムなものです。そしてまだアルゴリズムが含まれています。 – Joey

+0

質問をしている人にとっては、ランダムなアドバイス:ウィキペディアで読んだジェネレータを紹介する記事を読んでください。そして、参照された論文を幅広く読むこと。 – Joey

2

あなたが何をしているのかわからない場合(あなたの質問はあなたがL'EcuyerやMarsagliaのように聞こえない)、PRNGの修正や組み合わせから遠ざかってください。あなたは発電機の品質を損なう可能性が高いです。

このアドバイスは、凍結記録PRNGについて話していた場合にさらに有効です。