Для генерации случайных чисел в научных исследованиях используют разные способы, которые можно разделить на три группы: физические, табличные и алгоритмические. 3
Физические генераторы используют случайные явления, на основе которых создаются последовательности чисел. 3 Некоторые из них:
- Квантовый генератор на базе фотонного шума. 1 Метод базируется на квантовой неопределённости. 1 Для него достаточно светодиода и фотодетектора, которые регистрируют случайные фотоны. 1
- Физические генераторы на основе хаотических процессов. 2 Например, мониторинг электрических шумов тока в резисторе. 2
- Генераторы, использующие различные физические процессы. 2 К ним относятся радиоактивный распад, шумы аналоговых сетей, космическое излучение, фотоэлектрический эффект и другие квантовые явления. 2
Табличные генераторы используют заранее созданные таблицы, значения в которых независимы друг от друга. 3 Такой генератор позволяет получать равномерно распределённые случайные числа от 0 до 1 с нужным числом знаков после запятой. 3 Однако объём значений в таблицах небольшой, поэтому такой генератор не подходит для задач, где важен большой объём случайных чисел. 3
Алгоритмические генераторы используют методы, в которых последующее число зависит от предыдущего. 3 Последовательности из таких чисел называются псевдослучайными. 3 Алгоритмические генераторы не требуют дополнительного оборудования и используются для решения практических задач, в частности для реализации алгоритмов машинного обучения и вычислительного интеллекта. 3 Некоторые из них:
- Линейно-конгруэтный метод. 3 Основан на использовании остатка от деления взаимно простых чисел. 3
- Генераторы, основанные на методе сдвигового регистра. 3 Используют битовые последовательности, заполненные нулями и единицами, которые после сдвигают влево или вправо на определённое число разрядов, заполняя при этом пустые биты нулями. 3
- «Вихрь Мерсенна». 35 Особенностью генератора является большее число действий, через которые необходимо пройти начальной последовательности, чтобы на выходе получить конечный результат. 3 Это делает генератор более непредсказуемым, как и генерируемые им числа. 3