Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Каков принцип работы генератора случайных чисел?

Александр Титов Гений (53189), закрыт 13 лет назад
Лучший ответ
Evgeny M. Высший разум (952993) 13 лет назад
Есть 2 вида генераторов случайных чисел: физические и компьютерные.
Физические основаны на каком-нибудь случайном процессе, типа распад атомных ядер, ядерный магнитный резонанс и т. п.
Компьютерные основаны на рекурентных формулах, которые теоретически дают последовательность чисел со спектром в виде белого шума.
Обычно считается, что компьютерный метод дает псевдослучайную последовательность чисел и поэтому он хуже природного генератора случайных чисел.
Компьютерный генератор случайных чисел зацикливается из-за того, что компьютер работает только с конечным числом знаков после запятой. То есть компьютер выдает на самом деле периодическую последовательность чисел с очень огромным периодом.
Чисто теоретически, если бы компьютер работал бы с бесконечным числом знаков после запятой, то выдаваемая им последовательность была бы идеальным белым шумом. Математически это основано в конечном итоге на свойствах иррациональных чисел. В иррациональных числах идет бесконечная последовательность цифр, которая никакими методами не может быть отличена от чисто случайной последовательности.
Например, если Вы запишите число Pi=3,14... в двоичной системе, то получится бесконечная последовательность нулей и единиц. Но Вы можете подкидывать монетку и результат подкидывания тоже записать в виде последовательности нулей и единиц. Так вот, не существует никакого метода, который бы позволил различить эти две последовательности. То есть, если человек заранее не знает, что одна последовательность это число Pi, а другая последовательность это подкидывание монет, то никакими статистическими методами исследования он их не различит и не сможет определить, где идет последовательность цифр очень определенного числа, а где идет последовательность случайного бросания монеты.
Остальные ответы
Георгий Котов Оракул (53578) 13 лет назад
Если ты про программу на ПК, то ПК не умеет генерировать случайное число, там все делается по формуле и имеет последовательность.

Про другие не знаю как, самому интересно
Андрей Крылов Ученик (155) 13 лет назад
перебирание чисел и выдача их в случайном порядке в случайное время)))
Михаил Шишаев Профи (813) 13 лет назад
на компе, действительно, правильнее называть генератор псевдослучайных чисел. Фантазии у машины до сих пор нету и что-то родить сама она не способна. В самом грубом виде, как я себе представляю :

нужно случайное число от 0 до 9, целое
комп по порядку или по любому сколь угодно сложному закону перебирает эти числа, скажем, примерно 305 чисел в секунду.
примерно через 1 секунду от пользователя или от программы приходит сигнал СТОП, и на 303 сейчас числе он в данном круге, или на 315? - действительно получается очень случайный ответ
Mikhail LevinИскусственный Интеллект (615695) 13 лет назад
вы описали - не псевдослучайное, а настоящее случайное.

у машины есть навалом таких чисел: номер тика часов (длиной в одну двухмиллионную секунды) с момента загрузки ОС, номер такта процессора с момента запуска процессора, можно засечь моенты нажатия клавиш и прерываний от мышки, а потом загнать эти числа в качестве затравки в псевдослучайный генератор.
Mikhail Levin Искусственный Интеллект (615695) 13 лет назад
есть настоящие генераторы - "железные", основанные на генерации белого шума и получении из него единиц и нулей, раньше были на счетчиках Гейгера, даже в была стандартная ячейка в памяти для этого.

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

таких алгоритмов - море. Например, древний (и плохой) метод середины квадрата. Берут число, скажем 16 бит, возводят в квадрат, получают 32 бита, выбирают из него средние 16 -и так далее.

или стандартный конгруентный типа:
следующее = 3141592621*прошлое + 907633385;

есть очень хорошие, у которых ничего не повториться до скончания существования Вселенной!
HAL 9000 Мудрец (16978) 7 лет назад
Вот такую последовательность выдает компьютер при генерации цвета при использовании генерации псевдослучайных чисел (цвет это код в системе RGB)
Зацикливание мой друг. Картинка генерируется пиксель за пикселем строка за строкой.
УВЕЛИЧЬ ИЗОБРАЖЕНИЕ ВСЕ УВИДЕШЬ
Александр Марков Ученик (103) 4 года назад
Все хотят простых денег. За день делать 3-6к, вообще не напрягаясь, ну это же просто мечта. И цель эта достижима. Обнаружил для себя он-лайн казино ru.fresh.clothing давно. Как тогда затянуло, теперь постоянно заглядываю поиграть. Определенно всем рекомендую! Регистрируйтесь скорее! Казино выиграть даёт, поощряет высокими бонусами. Интерфейс сочный и приятный. Есть свежайшие слоты, традиционные настольные игры, игры с живыми дилерами и многое другое! Казино-просто класс! Открытие для любителей, экспертов и новичков!
Похожие вопросы