タグ付けされた質問 「random」

このタグは、疑似ランダムか真にランダムかに関わらず、乱数とそのジェネレーターに関する質問に使用します。

7
JSはランダムなブール値を生成します
簡単な質問ですが、ここでニュアンスに興味があります。 私は自分で思いついた次の方法を使用してランダムなブール値を生成しています: const rand = Boolean(Math.round(Math.random())); random()現れるたびに、常に落とし穴があるようです-それは本当にランダムではなく、何か他のものによって危うくされています。それで、私は知りたいです: a)上記はそれを行うための最良の方法ですか? b)私は物事を考えすぎていますか? c)私は物事を考えすぎていますか? d)私が知らない、より良い/より速い/エレガントな方法はありますか? (BとCが相互に排他的である場合にも多少関心があります。) 更新 違いがあれば、これをAIキャラクターの移動に使用しています。

14
Rails 3:ランダムなレコードを取得する
したがって、Rails 2でランダムなレコードを見つける例をいくつか見つけました。推奨される方法は次のようです。 Thing.find :first, :offset => rand(Thing.count) 初心者なので、Rails 3の新しい検索構文を使用してこれをどのように構築できるかわかりません。 では、ランダムなレコードを見つけるための「Rails 3 Way」とは何でしょうか。

13
指定された(数値)分布で乱数を生成します
異なる値のいくつかの確率を含むファイルがあります。例: 1 0.1 2 0.05 3 0.05 4 0.2 5 0.4 6 0.2 この分布を使用して乱数を生成したいと思います。これを処理する既存のモジュールは存在しますか?自分でコーディングするのはかなり簡単です(累積密度関数を作成し、ランダムな値[0,1]を生成し、対応する値を選択します)が、これは一般的な問題であるようで、おそらく誰かがそれ。 誕生日のリストを生成したいので、これが必要です(標準randomモジュールの配布には従いません)。
132 python  module  random 

4
ロードされたサイコロのデータ構造?
私がnサイドのロードされたサイコロを持っているとします。サイコロを振ったときに、各サイドkがp kになる確率があります。サイコロのランダムなロールを効率的にシミュレートできるように、この情報を静的に(つまり、確率の固定セットに対して)保存するための優れたアルゴリズムがあるかどうか知りたいです。 現在、私はこの問題のO(lg n)ソリューションを持っています。すべてのkの最初のk側の累積確率のテーブルを保存し、[0、1)の範囲でランダムな実数を生成し、テーブルに対してバイナリ検索を実行して、累積的な値は選択した値以下です。私はこのソリューションが好きですが、ランタイムが確率を考慮に入れていないのは奇妙に思えます。特に、片側が常に表示される、または値が均一に分布する極値の場合、素朴なアプローチを使用してO(1)のロールの結果を生成することが可能ですが、私の解決策はまだ多くのステップをとっています。 この問題をランタイムで何らかの形で「適応」させる方法でこの問題を解決する方法についての提案はありますか? 編集:この質問への回答に基づいて、私はこの問題への多くのアプローチとその分析を説明する記事を書きました。エイリアスメソッドのVoseの実装は、サイコロごとにΘ(n)前処理時間とO(1)時間を与えるように見えます。これは本当に印象的です。うまくいけば、これは回答に含まれる情報への便利な追加です!


4
リストからランダムに50項目を選択してファイルに書き込みます
これまでのところ、ファイルをインポートし、新しいファイルを作成し、リストをランダム化する方法を理解しました。 リストからランダムに50アイテムのみをランダムに選択してファイルに書き込むのに問題がありますか? def randomizer(input,output1='random_1.txt',output2='random_2.txt',output3='random_3.txt',output4='random_total.txt'): #Input file query=open(input,'r').read().split() dir,file=os.path.split(input) temp1 = os.path.join(dir,output1) temp2 = os.path.join(dir,output2) temp3 = os.path.join(dir,output3) temp4 = os.path.join(dir,output4) out_file4=open(temp4,'w') random.shuffle(query) for item in query: out_file4.write(item+'\n') したがって、ランダム化ファイルの合計が example: random_total = ['9','2','3','1','5','6','8','7','0','4'] 最初のランダムセットが3、2番目のランダムセットが3、3番目のランダムセットが3の3つのファイル(out_file1 | 2 | 3)が必要です(この例では、作成するファイルには50が必要です)。 random_1 = ['9','2','3'] random_2 = ['1','5','6'] random_3 = ['8','7','0'] したがって、最後の「4」は含まれませんが、問題ありません。 ランダム化したリストから50を選択するにはどうすればよいですか? さらに、元のリストからランダムに50を選択するにはどうすればよいですか?
129 python  file  list  select  random 


12
シャッフルにJavaScript Array.sort()メソッドを使用することは正しいですか?
私は彼のJavaScriptコードで誰かを助けていて、私のようなものは次のようなセクションに捕らえられました。 function randOrd(){ return (Math.round(Math.random())-0.5); } coords.sort(randOrd); alert(coords); 私の最初のことでしたが、ちょっと、これはおそらく機能しません!しかし、私はいくつかの実験を行ったところ、確かに少なくともランダム化された結果が得られるように思えました。 それから私はいくつかのウェブ検索をしました、そして、ほとんどトップでこのコードが最も熱心にコピーされた記事を見つけました。かなり立派なサイトと著者のように見えました... しかし、私の直感はこれが間違っているに違いないと私に告げています。特に、ソートアルゴリズムはECMA標準で指定されていないため。ソートのアルゴリズムが異なると、不均一なシャッフルが異なると思います。いくつかのソートアルゴリズムはおそらく無限にループするかもしれません... しかし、どう思いますか? そして、別の質問として...このシャッフルテクニックの結果がどれだけランダムであるかをどのように測定しますか? 更新:私はいくつかの測定を行い、答えの1つとして以下の結果を投稿しました。


3
1.0はstd :: generate_canonicalからの有効な出力ですか?
私はいつも、乱数は0と1の間にあり、なし1であると考えていました。つまり、乱数は半開区間[0,1)からの数値です。これはcppreference.comのドキュメントでstd::generate_canonical確認できます。 ただし、次のプログラムを実行すると、 #include <iostream> #include <limits> #include <random> int main() { std::mt19937 rng; std::seed_seq sequence{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; rng.seed(sequence); rng.discard(12 * 629143 + 6); float random = std::generate_canonical<float, std::numeric_limits<float>::digits>(rng); if (random == 1.0f) { std::cout << "Bug!\n"; } return 0; } それは私に次の出力を与えます: Bug! つまり1、MC統合で問題を引き起こす完璧なを生成します。それは有効な動作ですか、それとも私の側にエラーがありますか?これにより、G …
124 c++  c++11  random 


7
SQLiteテーブルからランダムな行を選択する
私が持っているsqlite次のスキーマを持つテーブルを: CREATE TABLE foo (bar VARCHAR) このテーブルを文字列のリストのストレージとして使用しています。 このテーブルからランダムな行を選択するにはどうすればよいですか?
119 sqlite  random  row 


9
JavaScriptのMath.randomはどれくらいランダムですか?
6年間、自分のWebサイトに乱数ジェネレーターのページを置いてきました。長い間、これは「乱数ジェネレーター」に関するGoogleでの最初または2番目の結果であり、ディスカッションフォーラムやブログで何百とは言わないまでも数十のコンテストや描画を決定するために使用されてきました(ウェブログと通常は見てください)。 今日、誰かが思ったほどランダムではないかもしれないと私に電子メールで送ってきました。彼女は非常に大きな乱数(たとえば、1〜10000000000000000000)を生成しようとしましたが、ほとんど常に同じ桁数であることがわかりました。確かに、私は関数をループでラップしたので、数千の数を生成でき、非常に大きな数の場合でも、変動は約2桁しかありませんでした。 どうして? これはループバージョンですので、自分で試すことができます。 http://andrew.hedges.name/experiments/random/randomness.html これには、Mozilla Developer Networkから取得した単純な実装と、存在しないWebページ(Paul Houleの「Central Randomizer 1.3」)をスワイプした1997年のコードの両方が含まれています。ソースを表示して、各メソッドの動作を確認します。 私はここや他の場所でメルセンヌツイスターについて読みました。私が興味を持っているのは、JavaScriptの組み込みMath.random関数からの結果に大きなばらつきがない理由です。ありがとう!
116 javascript  random 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.