Широкое применение для получения последовательностей псевдослучайных равномерно распределенных чисел получили конгруэнтные процедуры генерации, которые могут быть реализованы мультипликативным либо смешанным методом. Конгруэнтные процедуры являются чисто детерминированными, т.к. описываются в виде рекуррентного соотношения, когда функция (1) имеет вид
Xi+1= lXi+ m ( mod M ), (4)
где Xi, l, m, M - неотрицательные целые числа.
Раскрывая (4), получим
Xi = liX0 + ( li - 1) m / ( l - 1 )( mod M ). (5)
Если задано начальное значение X0, множитель l и аддитивная константа m, то (5) однозначно определяет последовательность целых чисел {Xi}, составленную из остатков от деления на М членов последовательности { li×X0 + m ( li - 1 ) / ( l - 1 )}.
Таким образом, для любого i ³ 1 справедливо неравенство Xi < M. По целым числам последовательности {Xi} можно построить последовательность {хi} = { Хi/ M } рациональных чисел из единичного интервала (0, 1).
Мультипликативный метод задает последовательность неотрицательных целых чисел { Хi }, не превосходящих М, по формуле
Хi+1= l Хi ( mod M ), (6)
т.е. это частный случай (4) при m = 0.
Для машинной реализации наиболее удобна версия М = pg, где p - число цифр в системе счисления, принятой в ЭВМ, а g - число бит в машинном слове.
Алгоритм построения последовательности для двоичной машины М = 2gсводится к выполнению следующих операций:
1) выбрать в качестве Х0 произвольное нечетное число;
2) вычислить коэффициент l = 8t ± 3, где t - любое целое положительное число;
3) найти произведение lХ0, содержащее не более 2g значащих разрядов;
4) взять g младших разрядов в качестве первого числа последовательности Х1, а остальные отбросить;
5) определить дробь х1 = Х1 / 2g из интервала (0, 1);
6) присвоить Х0 = Х1;
7) вернуться к пункту 3.
В настоящее время библиотеки стандартных программ ЭВМ для вычисления последовательностей равномерно распределенных случайных чисел основаны на конгруэнтных процедурах. Последовательность, полученная по мультипликативному методу, хорошо удовлетворяет статистическим критериям проверки качества.
В смешанном методе, в отличие от мультипликативного, m ≠ 0. Вычисление последовательности псевдослучайных чисел смешанным методом проводится по формуле (4). С вычислительной точки зрения смешанный метод генерации сложнее мультипликативного на одну операцию сложения, но при этом возможность выбора дополнительного параметра позволяет уменьшить возможную корреляцию получаемых чисел.