擬似乱数発生器について語ろうか。その2
前スレ
擬似乱数
http://pc11.2ch.net/test/read.cgi/tech/1146071975/
関連スレ
【危険】とんでもプログラム告発スレッド【悪質】
http://pc11.2ch.net/test/read.cgi/tech/1191860116/
SIMD-oriented Fast Mersenne Twister (SFMT):
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/index.html
探検
疑似乱数2
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2007/10/17(水) 22:34:59522デフォルトの名無しさん
2017/02/23(木) 13:04:42.59ID:UXkH84Wv 宇宙云々はあくまで真の乱数が使われていた場合でしょ
523デフォルトの名無しさん
2017/02/23(木) 13:15:51.47ID:eG9NqkD/ >>521
状態機械で内部の値が一緒だったらその次もその次もずっと同じ値を出し続けるんじゃね
状態機械で内部の値が一緒だったらその次もその次もずっと同じ値を出し続けるんじゃね
524デフォルトの名無しさん
2017/02/23(木) 13:37:51.43ID:lN59Dhjm 真の乱数なら、種の設定は (少なくとも実用上は) いかなる場合も最初の一度きりで二度と結果がループすることはない
525デフォルトの名無しさん
2017/02/23(木) 13:40:24.47ID:lN59Dhjm と言っても宇宙の何かの物理法則が真の乱数を作ることはないのだろうと思うけど。
全ては必ず有限らしいし、その中でのチューリング完全なんだろうだし。
全ては必ず有限らしいし、その中でのチューリング完全なんだろうだし。
526デフォルトの名無しさん
2017/02/23(木) 13:59:17.36ID:7wYQlXII 一つずつ乱数生成してないのかもね
527デフォルトの名無しさん
2017/02/23(木) 16:45:07.24ID:eG9NqkD/528デフォルトの名無しさん
2017/02/23(木) 16:46:44.91ID:WFbVQHcp529デフォルトの名無しさん
2017/02/23(木) 21:50:11.33ID:5geihC2S >>523
「前回(の乱数取得時)と同じ」という意味ではなく
「前回試合予想をした時と同じ」という意味ね
どちらも、同じ値から同じ試合の予想をして、
結果、前週と全く同じ予想が14試合x5口分で起きた
「前回(の乱数取得時)と同じ」という意味ではなく
「前回試合予想をした時と同じ」という意味ね
どちらも、同じ値から同じ試合の予想をして、
結果、前週と全く同じ予想が14試合x5口分で起きた
530デフォルトの名無しさん
2017/02/24(金) 14:00:51.79ID:xRGcfmim メルセンヌツイスタ使ってなかったんだろ
531デフォルトの名無しさん
2017/02/24(金) 19:02:56.20ID:3z/u0Cfz 用途が用途だから暗号論的擬似乱数の適応だろ
/dev/urandomでもCryptGenRandomでも
/dev/urandomでもCryptGenRandomでも
532デフォルトの名無しさん
2017/02/25(土) 15:09:25.02ID:u8Ry8YI7 状態変数が同じになったから同じ数列が出たんじゃねーよ。
二セット分繰り返す数列を出力する状態変数だっただけだろ。
http://science3.2ch.net/test/read.cgi/math/1088351567/424-425
円周率の 93299341 桁目から 07214545 という数列が出るそうだ。
まあ大体その辺で出そうな桁数だ。
おそらく無限に調べれば 1/10,0000,000 より少しだけ少ない頻度で出現するだろう。
そしてそのうちの 1/10,0000,000 は二回続く、つまり 1/10+E16 程度で 0721454507214545 という数列が出現するであろう。
目立つ組み合わせだから話題だが、どの二セットを取っても、その組み合わせが発生する確率は同じだ。
二セット分繰り返す数列を出力する状態変数だっただけだろ。
http://science3.2ch.net/test/read.cgi/math/1088351567/424-425
円周率の 93299341 桁目から 07214545 という数列が出るそうだ。
まあ大体その辺で出そうな桁数だ。
おそらく無限に調べれば 1/10,0000,000 より少しだけ少ない頻度で出現するだろう。
そしてそのうちの 1/10,0000,000 は二回続く、つまり 1/10+E16 程度で 0721454507214545 という数列が出現するであろう。
目立つ組み合わせだから話題だが、どの二セットを取っても、その組み合わせが発生する確率は同じだ。
533デフォルトの名無しさん
2017/02/25(土) 16:57:29.92ID:usTDxsWv e なら割と早く出て来る
534デフォルトの名無しさん
2017/03/10(金) 21:31:43.44ID:ARsP6JfD PCGってどうなん?
ttp://www.pcg-random.org/
説明読んだりビデオ観たりした限りでは優れているみたいなんだけども
アルゴリズム的には線形合同法とXorShiftのハイブリッドの様な感じで
結構単純な構造なんだけど、高速で良質な乱数を生成するとか
因みに2年前に発表されているみたいなんだけど知らんかったわ
ttp://www.pcg-random.org/
説明読んだりビデオ観たりした限りでは優れているみたいなんだけども
アルゴリズム的には線形合同法とXorShiftのハイブリッドの様な感じで
結構単純な構造なんだけど、高速で良質な乱数を生成するとか
因みに2年前に発表されているみたいなんだけど知らんかったわ
535デフォルトの名無しさん
2017/04/23(日) 03:06:26.50ID:H8Cvp+NU 周期性と分布バランスが目的用途に特化できるならそれが最強だろ
536デフォルトの名無しさん
2017/05/11(木) 11:22:40.04ID:yPF7Zec4 最強(笑)
537デフォルトの名無しさん
2018/01/01(月) 10:34:52.74ID:Adreh4LC538デフォルトの名無しさん
2018/05/23(水) 20:53:42.20ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
BZKM3
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
BZKM3
539デフォルトの名無しさん
2018/07/05(木) 01:00:09.16ID:RfoszcD2 5E7
540Goldwasser
2019/01/03(木) 13:41:14.69ID:r8gE2use ご覧あれーw
#include "pch.h"
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#define N 32
unsigned char x1[N], x2[N], x3[N];
void rp(unsigned char* a) {
int i, j, x;
for (i = 0; i < N; i++) {
a[i] = i;
}
for (i = 0; i < N - 2; i++) {
// rand from i+1 to N-1
j = (rand() % (N - 1 - i)) + i + 1;
// swap a[i] and a[j]
x = a[j];
a[j] = a[i];
a[i] = x;
}
if (a[N - 1] == N - 1) {
a[N - 1] = a[N - 2];
a[N - 2] = N - 1;
}
}
#include "pch.h"
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#define N 32
unsigned char x1[N], x2[N], x3[N];
void rp(unsigned char* a) {
int i, j, x;
for (i = 0; i < N; i++) {
a[i] = i;
}
for (i = 0; i < N - 2; i++) {
// rand from i+1 to N-1
j = (rand() % (N - 1 - i)) + i + 1;
// swap a[i] and a[j]
x = a[j];
a[j] = a[i];
a[i] = x;
}
if (a[N - 1] == N - 1) {
a[N - 1] = a[N - 2];
a[N - 2] = N - 1;
}
}
541デフォルトの名無しさん
2019/01/03(木) 13:41:50.45ID:r8gE2use 後半
int data() {
int i, j = 0, k = 0;
unsigned int a[N];
unsigned int z[N];
unsigned char w[N];
for (i = 0; i < N; i++)
a[i] = rand()%256;
for (i = 0; i < N; i++)
z[i] = 0;
k = 0;
while (k< 4000) {
for (i = 0; i < N; i++)
z[i] ^= a[x2[i]];
for (i = 0; i < N; i++)
a[i] ^= z[i];
for (i = 0; i < N; i++)
w[i] = x1[x2[x3[i]]];
*x2 = *w;
k++;
for(i=0;i<N;i++)
printf("%u,",a[i]);
}
printf("\n");
return 0;
}
int data() {
int i, j = 0, k = 0;
unsigned int a[N];
unsigned int z[N];
unsigned char w[N];
for (i = 0; i < N; i++)
a[i] = rand()%256;
for (i = 0; i < N; i++)
z[i] = 0;
k = 0;
while (k< 4000) {
for (i = 0; i < N; i++)
z[i] ^= a[x2[i]];
for (i = 0; i < N; i++)
a[i] ^= z[i];
for (i = 0; i < N; i++)
w[i] = x1[x2[x3[i]]];
*x2 = *w;
k++;
for(i=0;i<N;i++)
printf("%u,",a[i]);
}
printf("\n");
return 0;
}
542Goldwasser
2019/01/03(木) 13:42:22.37ID:r8gE2use 最後
int main() {
rp(x1);
rp(x2);
data();
return 0;
}
int main() {
rp(x1);
rp(x2);
data();
return 0;
}
543デフォルトの名無しさん
2019/01/06(日) 08:57:50.46ID:kWOVO8kw 誰かTestU01の使い方を教えてください
544デフォルトの名無しさん
2019/02/24(日) 02:35:20.31ID:LCfXPkf7■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- お前らは“スカイマイルタワー”建設計画を知っているか?
- 万引きJC「すいません許してください!何でもしますから!」←どうする?
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
- Perfume・あ~ちゃんの結婚相手の一般男性、吉田カバンの社長と判明 [977261419]
- 「黙らせてやろうと思った」自宅マンション10階から高校テニスコート内の女子生徒目掛けて貯金箱を投擲した女の子、殺人未遂で逮捕 [399583221]
- 5時だから窓から5回ちんこ出した
