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

このタグは、乱数、疑似乱数、およびコンピューターエントロピーを扱う質問用です。

6
欠席の可能性を考慮して、誰の番がクロワッサンを購入するのかを調べます
この投稿を改善したいですか?引用や回答が正しい理由の説明など、この質問に対する詳細な回答を提供します。十分な詳細がない回答は、編集または削除できます。 あるチームは、毎朝誰かがクロワッサンを持参することを決めました。毎回同じ人物であってはならないので、次の順番を決定するシステムが必要です。この質問の目的は、明日クロワッサンを持ち込む順番を決定するアルゴリズムを決定することです。 制約、仮定、目的: クロワッサンを持参する順番は、前日の午後に決定されます。 ある日、欠席している人もいます。アルゴリズムは、その日に出席する人を選択する必要があります。欠席はすべて1日前にわかっているため、クロワッサンの買い手は前日の午後に決定できると仮定します。 全体として、ほとんどの人はほとんどの日に出席しています。 公平を期すため、誰もがクロワッサンを他の人と同じ回数購入する必要があります。(基本的に、すべてのチームメンバーがクロワッサンに費やす金額が同じであると仮定します。) 名簿の退屈を軽減するために、ランダム性の要素、または少なくとも知覚されたランダム性を持つことが望ましいでしょう。これは厳しい制約ではありません。それは審美的な判断です。ただし、同じ人を連続して2回選ぶことはできません。 クロワッサンを持ってくる人は事前に知っておくべきです。したがって、人PがD日にクロワッサンを持参する場合、この事実は人Pがいる前日に決定する必要があります。たとえば、クロワッサンの持ち主が常に前日に決定される場合、前日にいる人の1人である必要があります。 チームメンバーの数は十分に少なく、ストレージとコンピューティングリソースは事実上無制限です。たとえば、アルゴリズムは、過去に誰がクロワッサンを持ってきたかの完全な履歴に依存できます。毎日高速のPCで最大数分間の計算で問題ありません。 これは現実世界の問題のモデルであるため、シナリオをより適切にモデル化していると思われる場合は、自由に仮定に挑戦したり洗練したりできます。 起源1:Florian Margaineによるクロワッサンの購入者を確認します。 起源2:誰がジルによってクロワッサンを買うつもりかを調べます。 この質問は、Gillesと同じバージョンであり、さまざまなコミュニティがプログラミングの課題にどのように対処するかを確認するための実験として、プログラマーに再投稿されました。

2
ランダムキャッシュの有効期限
私はランダムなキャッシュの有効期限を実験して、個々のリクエストが複数のものを一度に更新する状況を回避しています。たとえば、Webページには5つの異なるコンポーネントが含まれる場合があります。それぞれが30分でタイムアウトするように設定されている場合、ユーザーは30分ごとに長い待機時間を持ちます。そのため、代わりに、15〜45分のランダムな時間にすべてを設定して、特定のページのロードで最大1つのコンポーネントのみがリロードされるようにします。 このトピックに関する調査やガイドライン、たとえば最適分散パラメーターを見つけようとしています。Google(?)がこの手法をどのように使用しているかについての記事を1つ見たのを覚えていますが、それを見つけることができず、そのトピックについてあまり書かれていないようです。

3
グリッド上で有向グラフをランダムに生成します
ポケモンのアイススライディングパズルに似たパズルゲームを作成するために、有向グラフをランダムに生成しようとしています。 これは基本的に、http://bulbanews.bulbagarden.net/wiki/Crunching_the_numbers:_Graph_theoryをランダムに生成できるようにしたいものです。 xおよびy次元でグラフのサイズを制限できる必要があります。リンクに示されている例では、8x4グリッドに制限されます。 私が直面している問題は、グラフをランダムに生成するのではなく、ノードの反対側に何か(岩のようなもの)が必要なので、2D空間に適切にマップできるグラフをランダムに生成することですスライドを止めると視覚的に意味があります。これに伴う問題は、岩が他の2つのノード間のパスまたは場合によっては別のノード自体のパスになり、グラフ全体が破損することがあることです。 私が知っている少数の人々と問題について議論した後、解決策につながる可能性のあるいくつかの結論に達しました。 グリッドを構築するときに、グリッドの障害物をグラフの一部として含める。 完全に満たされたグリッドから始めて、ランダムなパスを描画し、そのパスを機能させるブロックを削除します。 問題は、追加の短いパスの導入を避けるために、どれを削除するかを判断することとなります。また、動的プログラミングアルゴリズムは有益であると考えていましたが、動的プログラミングアルゴリズムをゼロから作成するのに熟練している人はいませんでした。この問題が公式に呼ばれているものについてのアイデアや参考文献(公式のグラフの問題である場合)が最も役立ちます。 ブロックをランダムに配置し、選択した開始/終了からナビゲーショングラフを生成することで、これまでに達成したことの例をいくつか示します。アイデア(前のリンクで説明)は、緑のSから始めて緑のFに到達することです。これを行うには、上/下/左/右に移動し、選択する方向に移動し続けます。壁。これらの写真では、灰色が壁、白が床、紫色の線が開始から終了までの最小の長さであり、黒い線と灰色の点が可能な経路を表しています。 ランダムに生成されたグラフの悪い例は次のとおりです。 ランダムに生成された(または手で調整された)グラフの良い例を次に示します。 また、パズルとして実際にこれをプレイするときに、より難しいものが最小パスに沿って多くの高度なノードを持つものであることに気づいたようです。

1
Pythonランダムシャッフルの仕組み
Pythonでランダムからのシャッフルはどのように機能しますか? それは非常に速く動作するので私は尋ねます。シャッフルを書き込もうとすると、10 ^ 6要素で1分動作しますが、Pythonシャッフルは8秒で動作しますか?
11 python  random 

4
乱数発生器は、同じシードが与えられても、異なる出力を生成できますか?
タイトルはそれを要約します。DateTime.Nowや、光センサーなどから生成された数値など、他のソースのランダム性に依存せずに、同じ入力が与えられた場合に可変出力を生成できるアルゴリズムが存在するかどうかを知りたい。さらに、アルゴリズムを実行できない順番に、異なる出力を生成する2つの異なる無関係な実行。
10 random 

6
真の乱数ジェネレーターWebサービスが必要[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ソフトウェアエンジニアリングスタック交換のトピックになるようにします。 5年前休業。 Random.orgは、アナログの世界(cf.)からIPごとに1日あたり200kのランダムビット(32ビット整数は6250のみ!)を提供します。 誰かが1日あたりのオンデマンドのランダムビット数を増やす代替のWebサービスを知っていますか? (価格が1000×1024ビット/米ドルセントの「予想内」である限り、支払いは問題ありません)(random.orgの有料サービス料金100×この価格)

4
rand()は、狭い範囲に対して同じ数値を再び与えます
20x20のグリッドがあり、プレーヤー(P)、ターゲット(T)、3人の敵(X)を表示するようなゲームを作成しようとしています。これらはすべて、を使用して割り当てられるX座標とY座標を持っていrand()ます。問題は、ゲームでより多くのポイント(エネルギーなどのリフィル)を取得しようとすると、範囲が小さいため(1から20まで)、他のポイントの1つ以上と重複することです。 これらは私の変数であり、私はそれらを割り当てていますどのようにして値:(COORDあるstructだけでXとYとの) const int gridSize = 20; COORD player; COORD target; COORD enemy1; COORD enemy2; COORD enemy3; //generate player srand ( time ( NULL ) ); spawn(&player); //generate target spawn(&target); //generate enemies spawn(&enemy1); spawn(&enemy2); spawn(&enemy3); void spawn(COORD *point) { //allot X and Y coordinate to a point point->X = randNum(); …
9 c++  random 

1
`(seed * 9301 + 49297)%233280`ランダムアルゴリズムの元のソース?
シードされた(疑似)乱数ジェネレーターの作成例を検索すると、次のようなものに出くわします(特定の例http://indiegamr.com/generate-repeatable-random-numbers-in-js/): // the initial seed Math.seed = 6; // in order to work 'Math.seed' must NOT be undefined, // so in any case, you HAVE to provide a Math.seed Math.seededRandom = function(max, min) { max = max || 1; min = min || 0; Math.seed = (Math.seed * 9301 + …
9 history  random 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.