Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kebal
9 / 9 / 0
Регистрация: 02.11.2012
Сообщений: 153
#1

Генератор псевдослучайных чисел (иллюзия?) - C++

03.03.2013, 13:40. Просмотров 1092. Ответов 11
Метки нет (Все метки)

Пусть есть какое-либо событие и оно может быть либо удачным, либо не удачным.
Есть последовательность таких событий. Нам важно только конечное. Результат удачный/не удачный мы не знаем сразу, а только когда провоцируем это событие.

Так вот, чтобы повысить шанс конечного события мы несколько раз провоцируем предшествующие ему события и ждем пока они несколько раз не будут неудачными. Теперь мы заявляем, что вот столько раз не удача, значит следующее событие скорей всего будет удачным. Поэтому теперь мы спровоцируем финальное событие. Так вот, действительно ли, что шанс получения удачи таким образом повышен или это просто иллюзия?

Проанализировав полученные числа из генератора случайных чисел, увидел, что каждое например из 2 чисел выпадает почти одинаковое кол-во раз. То есть действительно, если генератор сгенерировал несколько не удачных событий подряд, то в связи с тем, что среднее кол-во выпадений удачных/не удачных стремится к равенству, то генератор "стремясь к равенству" следующее выпадение сделает удачным.

Но если вообще брать независимо какое-либо событие в данный промежуток времени, то всё равно шанс выпадения 1/2 не зависимо от предыдущих.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2013, 13:40
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Генератор псевдослучайных чисел (иллюзия?) (C++):

генератор псевдослучайных чисел... - C++
Вот програмулька генерирующая псевдослучайные числа создавалась по алгоритму X(n+1)=a*X(n)+c*(mod M) кто может подсказать как выводить...

Генератор псевдослучайных чисел - C++
Всем привет. Как такое "чудо" пишеться, примерный алгоритм, если можно на псевдокоде: Написать генератор псевдослучайных чисел по...

Генератор псевдослучайных чисел - C++
Написать генератор псевдослучайных чисел по алгоритму r = r * 4231 + 123457; Подсчитать частоты попадания в каждый из интервалов длиной...

Генератор псевдослучайных чисел - C++
Данный генератор работает по конгруэнтному методу, формула X_{n} = ( a X_{n-1}^3 + b X_{n-1}^2 + c X_{n-1} + d )\mod 2^e. При...

Генератор псевдослучайных чисел. - C++
Здраствуйте. Мне нужно сделать вот что "Написать генератор псевдослучайных чисел по алгоритму r = r * 4231 + 123457; Подсчитать частоты...

Генератор псевдослучайных чисел. - C++
Написать генератор псевдослучайных чисел по алгоритму r = r * 4231 + 123457; Подсчитать частоты попадания в каждый из интервалов...

11
Kuzia domovenok
2125 / 1955 / 194
Регистрация: 25.03.2012
Сообщений: 6,804
Записей в блоге: 1
03.03.2013, 13:59 #2
очень сложно понять, о каких событиях идёт речь. Что такое последовательность событий?
Вот у меня последовательность: УУУННУНУНННУУНННУНУУ
какой из неё вывод делать? События независимые?
если ты о том, что после выпадения 10 орлов вероятность выпадения решки повышается, то ты неправ.
Тут даже здравый смысл это подсказывает без математических выкладок, что вероятность в игре в монетку ВСЕГДА 1/2
ещё см. wikipedia: Gambler's fallacy
1
raxp
10179 / 6562 / 481
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
03.03.2013, 15:20 #3
Проанализировав полученные числа из генератора случайных чисел
Генератор псевдослучайных чисел
не путайте псевдослучайные и действительно случайные.
0
fit
14 / 14 / 0
Регистрация: 20.04.2010
Сообщений: 102
03.03.2013, 17:19 #4
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
очень сложно понять, о каких событиях идёт речь. Что такое последовательность событий?
Вот у меня последовательность: УУУННУНУНННУУНННУНУУ
какой из неё вывод делать? События независимые?
если ты о том, что после выпадения 10 орлов вероятность выпадения решки повышается, то ты неправ.
Тут даже здравый смысл это подсказывает без математических выкладок, что вероятность в игре в монетку ВСЕГДА 1/2
ещё см. wikipedia: Gambler's fallacy
речь идет о программном методе генерации случайных чисел
а в основе любого из них их лежит рекуррентное соотношение вида x+1 = F(x). а значит получаемое число не может быть полностью случайным
Цитата Сообщение от kebal
Так вот, чтобы повысить шанс конечного события мы несколько раз провоцируем предшествующие ему события и ждем пока они несколько раз не будут неудачными. Теперь мы заявляем, что вот столько раз не удача, значит следующее событие скорей всего будет удачным.
качество последовательности псевдослучайных чисел характеризуется длиной отрезка апериодичности - это последовательность "случайных" чисел в пределах которой они не повторяются. так как разрядность ЭВМ конечна эти последовательности будут повторятся из раза в раз.
это и отличает псевдослучайные числа от случайных.
0
Kuzia domovenok
2125 / 1955 / 194
Регистрация: 25.03.2012
Сообщений: 6,804
Записей в блоге: 1
03.03.2013, 17:27 #5
Цитата Сообщение от fit Посмотреть сообщение
речь идет о программном методе генерации случайных чисел
нет, не идёт.
Цитата Сообщение от fit Посмотреть сообщение
качество последовательности псевдослучайных чисел характеризуется длиной отрезка апериодичности - это последовательность "случайных" чисел в пределах которой они не повторяются. так как разрядность ЭВМ конечна эти последовательности будут повторятся из раза в раз.
это и отличает псевдослучайные числа от случайных.
Да кто вообще говорил, что автор их сам по алгоритму генерирует, а не rand() использует?
0
fit
14 / 14 / 0
Регистрация: 20.04.2010
Сообщений: 102
03.03.2013, 19:23 #6
Цитата Сообщение от Kuzia domovenok
нет, не идёт.
а каком еще методе может идти речь в разделе с/с++
Цитата Сообщение от Kuzia domovenok
Да кто вообще говорил, что автор их сам по алгоритму генерирует, а не rand() использует?
никто не говорил. rand()/srand() и подобные тоже генерируют по алгоритму
сам/не сам не важно. от алгоритма зависит качество последовательности, но принцип работы всех генераторов один и тот же.
то есть сказанное мной верно для всех генераторов псевдослучайных чисел.
0
Kuzia domovenok
2125 / 1955 / 194
Регистрация: 25.03.2012
Сообщений: 6,804
Записей в блоге: 1
03.03.2013, 19:28 #7
Цитата Сообщение от fit Посмотреть сообщение
никто не говорил. rand()/srand() и подобные тоже генерируют по алгоритму
сам/не сам не важно. от алгоритма зависит качество последовательности, но принцип работы всех генераторов один и тот же.
то есть сказанное мной верно для всех генераторов псевдослучайных чисел.
и что? тут же не сам алгоритм генерации обсуждается! Это ты о нём речь завёл.
0
fit
14 / 14 / 0
Регистрация: 20.04.2010
Сообщений: 102
03.03.2013, 19:45 #8
Цитата Сообщение от Kuzia domovenok
и что? тут же не сам алгоритм генерации обсуждается! Это ты о нём речь завёл.
автор задал вопрос
Цитата Сообщение от kebal
Так вот, действительно ли, что шанс получения удачи таким образом повышен или это просто иллюзия?
и в качестве примера привел повторяющиеся последовательности случайных чисел генератора.
если бы он знал принцип работы генератора таких вопросов бы у него не возникало.
0
Kuzia domovenok
2125 / 1955 / 194
Регистрация: 25.03.2012
Сообщений: 6,804
Записей в блоге: 1
03.03.2013, 20:04 #9
Цитата Сообщение от fit Посмотреть сообщение
Так вот, действительно ли, что шанс получения удачи таким образом повышен или это просто иллюзия?
КАКИМ образом? Уж точно не с помощью генератора псевдослучайных чисел.

Точнее задам его вопрос проще. Если мы опросили генератор псевдослучайных чисел 10 раз и все 10 раз он выдал одно и то же число Х, будет ли вероятность НЕ получить это число Х на следующем опросе выше, чем если бы это был единичный опрос генератора.

Добавлено через 6 минут
То есть рассматривается ситуация, когда генератор в какой-то момент выдал большую серию одинаковых чисел. (не обязательно одинаковых, а с каким-то одинаковым признаком, скажем 10 чётных чисел, хотя мы ожидали, что он будет генерировать чётные и нечётные с равной вероятностью)
0
Croessmah
Ушел
13764 / 8014 / 923
Регистрация: 27.09.2012
Сообщений: 19,729
Записей в блоге: 3
Завершенные тесты: 1
03.03.2013, 20:09 #10
Цитата Сообщение от kebal Посмотреть сообщение
Так вот, чтобы повысить шанс конечного события мы несколько раз провоцируем предшествующие ему события и ждем пока они несколько раз не будут неудачными. Теперь мы заявляем, что вот столько раз не удача, значит следующее событие скорей всего будет удачным.
Как вариант, есть заданный коэффициент, например, k=5. Генерируем число n=[0;99]. Если n<k, тогда true, иначе false. В случае false увеличиваем k. Соответственно, с увеличением k шансы на конечное true растут. Или я что-то совсем не так понял.
0
fit
14 / 14 / 0
Регистрация: 20.04.2010
Сообщений: 102
03.03.2013, 20:40 #11
Цитата Сообщение от Kuzia domovenok
КАКИМ образом? Уж точно не с помощью генератора псевдослучайных чисел.
в качестве примера он привел последовательности генератора. якобы вот, подтверждение моим домыслам. хотя его домыслы к работе никакого генератора отношения не имеют.
Цитата Сообщение от Kuzia domovenok
Точнее задам его вопрос проще. Если мы опросили генератор псевдослучайных чисел 10 раз и все 10 раз он выдал одно и то же число Х, будет ли вероятность НЕ получить это число Х на следующем опросе выше, чем если бы это был единичный опрос генератора.
как хотите формулируйте. если знаете как работает генератор - не будет подобных вопросов.
генератор ведь не "стремится к равенству" (как пишет автор), т.е. он не учитывает статистику событий при генерации числа.
на примере rand() все замечали, сколько его не запускай он выдает одно и тоже число. потому что его параметр генерации по умолчанию 1. если параметр изменить через srand - число уже будет другим.
то есть чтобы получить другое число - нужно поменять параметр. число повторений ни при чем.
0
kebal
9 / 9 / 0
Регистрация: 02.11.2012
Сообщений: 153
04.03.2013, 16:00  [ТС] #12
Самый первый ответ в данной теме дал мне исчерпывающий ответ на данный вопрос.
0
04.03.2013, 16:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2013, 16:00
Привет! Вот еще темы с ответами:

Генератор псевдослучайных чисел - C++
Народ, помогите плиз с решением этой задачи. Мне надо управляемый генератор равновесных псевдослучайных парных наборов.. Вот просто...

Генератор псевдослучайных чисел - проблема. - C++
Очень нужно написать программу-генератор псевдослучайных чисел на языке С. Насколько я понимаю должна использоваться функция rand, но она...

Массивы,генератор псевдослучайных чисел. - C++
Всем привет,помогите разобраться с 2 задачами. 1) Дана последовательность из n вещественных чисел. Найти наиболее длинную...

Генератор псевдослучайных чисел Парка-Миллера - C++
Здравствуйте! Как мне решить данную задачу? Минимальный генератор Парка- Миллера Простейшая последовательность , которую можно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru