Тестирование генераторов псевдослучайных последовательностей с помощью трехмерной модели Изинга

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

Вестн. Ом. ун-та. 2011. № 4. С. 172-174.

УДК 519.245 А.Ю. Шерешик

ТЕСТИРОВАНИЕ ГЕНЕРАТОРОВ ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ С ПОМОЩЬЮ ТРЕХМЕРНОЙ МОДЕЛИ ИЗИНГА

Исследуются реализации трехмерной модели Изинга, где в роли генератора случайных чисел используются различные генераторы псевдослучайных последовательностей. Проводится анализ влияния уравнения и структуры генератора на результаты моделирования, а именно отклонение критических индексов, полученных при эксперименте от теоретических расчетов.

Ключевые слова: трехмерная модель Изинга, случайные числа, псевдослучайная последовательность.

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

В представленной работе проводится исследование влияния выбора генератора случайных чисел на отклонение параметров модели от рассчитанных теоретически. В ходе эксперимента рассмотрены различные генераторы случайных чисел. Проводится моделирование, анализ и сравнение поведения модели при температуре, близкой к критической. Делаются выводы о точности моделирования фазового перехода.

Задача эксперимента - оценить зависимость моделирования фазового перехода на трехмерной модели Изинга от выбора генераторов псевдослучайных последовательностей; найти, какие из рассмотренных генераторов позволяют достоверно моделировать фазовый переход. Таким образом, оценка результатов производилась по тому, насколько полученные коэффициенты фазового перехода отличаются от теоретически рассчитанных.

По данным [1], для трехмерной модели Изинга с взаимодействием шести спинов температура фазового перехода кТо = J определена как 4.5115. В этой же работе вычислены теоретические значения коэффициентов фазового перехода, которыми мы воспользуемся впоследствии.

Для сравнения были рассмотрены подобные работы, посвященные исследованию двухмерной модели Изинга методом Монте-Карло. Опубликованные результаты позволяют утверждать, что для моделирования на двухмерной решетке некоторые из рассмотренных генераторов показали хорошие результаты при количестве шагов порядка 107 и линейном размере решетки 16 [2].

© А.Ю. Шерешик, 2011

Тестирование генераторов псевдослучайных последовательностей... 173

В ходе работы были исследованы следующие генераторы случайных чисел.

1. Линейный конгруэнтный генератор. Линейный конгруэнтный генератор в

общем случае имеет вид:

xn+1 = (axn + b) mod m, где структуру определяют модуль m, множитель a, приращение b и начальное значение x0. Это наиболее простой из рассмотренных генераторов.

Подобные генераторы обладают довольно хорошими статистическими свойствами. Уравнение рассматриваемого нами генератора выглядит так:

xn+1 = (16807 xn) mod 2147483647.

2. Генератор Фибоначчи с запаздыванием.

Генераторы Фибоначчи весьма популярны, поскольку предлагают простой метод получения очень больших периодов. Генератор в общем случае имеет вид:

xn = (xn-p • xn-q) mod m.

Где • одна из простых бинарных арифметических операций: +; -; *; л. В работе [2] были отмечены и рекомендованы для использования при моделировании двухмерной решетки Изинга некоторые из подобных генераторов. Мы рассмотрим четыре из них, построенные на операциях сложения и сложения по модулю 2:

xn = (xn-2281 + xn-1029) mod 2147483647; xn = (xn-2281 л xn-1029) mod 2147483647; xn = (xn-250 + xn-103) mod 2147483647; x„ = (х„-25оах„-1оз) mod2147483647;

3. «Вихрь Мерсенна».

Сравнительно новый генератор, разработанный в 1997 г., основывается на свойствах простых чисел Мерсенна и обеспечивает быструю генерацию высококачественных псевдослучайных чисел. Полное описание можно найти в работе [3].

Также в ходе работы была проведена серия экспериментов с целью выяснить, при каком значении количества итераций на спин моделирование обеспечивает наиболее близкие к теоретическим результаты. Рассмотрение этих экспериментов выходит за рамки данной статьи, однако они позволили выяснить, что оптимальная продолжительность эксперимента составляет 500 000 шагов на спин. Число отбрасываемых шагов для установления релаксации равно 50 000.

В результате эксперимент проводился на компьютерной модели трехмерной решетки Изинга при различных значениях линейного размера. Было выбрано 10 значений с шагом 8. Первым значением брали 16 и далее до 88. Вычисление параметров системы проводилось при температуре Тс= 4.5115. Далее приведен график результатов для «Вихря Мерсенна».

На рисунке представлена зависимость измеряемых параметров от размера решетки. График построен в двойном логарифмическом масштабе. Основываясь на результатах измерения, получаем значения 1/у, Y/v, р/у.

-г

Ш In m ♦ 1(1 X

л ln

tin L

13

2,5

3,5

4,5

Удобно найти их через уравнение аппроксимирующей кривой, которая строится по методу наименьших квадратов.

Из полученных значений, руководствуясь скейлинговыми соотношениями, находим коэффициенты a, fi, у, и. В данном случае они равны соответственно 0,1115 0,3252 1,2383 и 0,6279.

Таким же образом получили результаты для всех рассмотренных генераторов. Для удобства дальнейшего упоминания пронумеруем их:

1. xn+1 = (16807xr) mod 2147483647;

2. xn = (xn-250 + xn-103) mod 2147483647;

3. xn = (xn-250 A xn-103) mod 2147483647;

4. xn = (xn-2281 + xn-1029) mod 2147483647;

5. xn = (xn-2281 A xn-1029) mod 2147483647;

6. «Вихрь Мерсенна».

В таблице указаны полученные результаты для всех исследованных генераторов случайных чисел:

Номер генератора 1 2 3 4 5 б Теоретическое значение

а 0,0692 0,0B5B 0,07B4 0,1202 0,1059 0,1115 0,11

в 0,330B 0,32B5 0,334 0,3195 0,3155 0,3252 0,3265

Y 1,2694 1,2573 1,2537 1,241 1,2634 1,23B3 1,2372

V 0,6464 0,6336 0,6312 0,6176 0,6334 0,6279 0,6301

Откло- нение 0,0274 0,0159 0,01 B3 0,0091 0,0145 0,0016

Здесь в последней строке отклонение указано среднеквадратичное отклонение полученных значений от теоретических, приведенных в последнем столбце.

По результатам эксперимента, наиболее подходящим можно считать генератор «Вихрь Мерсенна», что только подтверждает многочисленные исследования, где он признан качественным, в том числе и

за счет большого периода и равномерного распределения. Однако и прочие генераторы показали приемлемый результат. Результаты для генераторов Фибоначчи улучшаются при выборе больших значений зерна и выборе операции сложения в качестве базовой. Наименее соответствуют теоретическим результаты для линейного конгруэнтного генератора. Однако, если рассматривать все коэффициенты в отдельности, заметим, что большое отклонение наблюдается только для а, остальные же совпадают с ожидаемыми с точностью до первого знака после запятой.

В результате оценили зависимость моделирования фазового перехода на трехмерной модели Изинга от выбора генераторов псевдослучайных последовательностей. Нашли, что генератор «Вихрь Мерсенна» позволяет весьма достоверно моделировать фазовый переход.

ЛИТЕРАТУРА

[1] Pelissetto, Andrea; Vicari, Ettore Critical phenomena and renormalization-group theory // Physics Reports (2002) 368 (6): 549-727.

[2] Coddington P. D. Tests of random number generators using Ising model simulations // Int. J. Modern Physics C 7, 3, 1996. P. 295-303.

[3] Matsumoto M., Nishimura T. "Mersenne twister: A 623-dimensionally equidistributed uniform pseudorandom number generator". ACM Trans. on Modeling and Computer Simulations (1998) 8 (1): 3-30.

[4] Вакилов А. Н., Марков О. Н., Прудников В. В. Компьютерное моделирование фазовых переходов в однородных и неупорядоченных системах : учебное пособие. Омск : Изд-во ОмГУ, 2001. 85 с.

[5] Гулд Х., Тобочник Я. Компьютерное моделирование в физике : в 2 ч. Ч. 2 / пер. с англ. М. : Мир, 1990. 400 с.

[6] Иванов М. А., Чугунков И. В. Теория, применение и оценки качества генераторов псевдослучайных последовательностей. М. : Изд-во Ку-диц-образ, 2003. 238 с.